$.type 怎么精确判断对象类型的 --(源码学习2)
2024-05-21 19:17:20
目标:
var a = [1,2,3];
console.log(typeof a); //->object
console.log($.type(a)); //->array
jQuery -v1.12.4
1 jQuery.each( "Boolean Number String Function Array Date RegExp Object Error Symbol".split( " " ), 2 function( i, name ) { 3 class2type[ "[object " + name + "]" ] = name.toLowerCase(); 4 } ); 5 6 7 8 .... 9 10 11 type: function( obj ) { 12 if ( obj == null ) { 13 return obj + ""; 14 } 15 return typeof obj === "object" || typeof obj === "function" ? 16 class2type[ toString.call( obj ) ] || "object" : 17 typeof obj; 18 },
分析:
第1-4行:通过遍历给class2type对象添加属性
第16行:通过toString.call(obj)来得到obj的属性。
最新文章
- php 配置 关闭警告,php warning 关闭的方法
- tomcat 请求头错误 HTTP header parsing errors
- ImportError: cannot import name 'is_string_like'
- linux下搭建FTP服务器
- Java面向对象设计原则
- C语言课后习题(58)
- Sun 解决方案大会归来
- 百度热力图和高德热力图对比
- Android图片剪裁库:uCrop
- If-Modified-Since HTTP 304 和 ETag
- 在linux开发板上显示图片,制作开发板的logo标签
- 从父组件中获取子组件的值
- 在tensorflow框架下添加正则化约束l1、l2的方法
- ​互链半年报 | 区块链平台应用落地哪家强?阿里系第一,迅雷、平安紧随
- SrpingCloud微服务 服务调用逻辑图
- 牛客网赛码网 输入输出格式 pythonC++
- (flutter)黑苹果系统 Xcode iOS flutter 跑通真机模拟器 此oc clover 彼oc swift
- 中国石油大学《混凝土》第二阶段在线作业
- 设置计算机电源线,小技巧get 主机内凌乱线材如何轻松搞定
- 思科学院cisco-基本网络连接和通信
热门文章
- 线程与进程的区别及其通信方式
- Sublime功能拓展及插件
- Hadoop:Hadoop基本命令
- fastjson取某个key_JAVA学习:怎么给函数取一个“合理”的名字
- Django2.0 path 正则匹配不出url的解决方法
- Kotlin — 使用IDEA运行第一个Kotlin程序,打印“Hello World”!
- Flutter进阶第9篇:检测网络连接,监听网络变化
- Linux input输入子系统demo驱动
- [NOI2015]寿司晚宴——状压dp
- Python入门:局部变量与全局变量1