`
zhangyaochun
  • 浏览: 2566325 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

jQuery源码浅谈系列---工具方法$.type

阅读更多

最近发觉大家多在写关于jQuery的源码解析,呵呵,其实自己入行于jQuery,从基于jQuery进行公司级的ui组件开发到现在的各种版本的源码研究,插件狂人的锻炼,觉得应该写的什么纪念一下。

 

不废话了,正因为喜欢所以化时间研究。但是我的代码不会像很多人那样很全面的去注释每一个api。

 

今天的重点是$.type();

 

-------------如果你一直用jQuery或者版本用的比较早的话,你会发现它来自于1.4.3(很多人对版本没有概念,请你注意了,版本意识一定要加强啊)

 

你知道怎样快速查找到jquery的每一个版本的api吗?

--------------------我来告诉你(在地址栏输入code.jquery.com/jquery-版本号.js

呵呵 这边只是个人习惯,或者说查多了,自己就记住了。(时间+勤奋能让你比一般人快一点点。。)

 

 

其实问什么会要强调这个改变呢

 

1.因为以前的版本在判断array或者function的时候多是object.prototype.toString.call(obj)

 

2.但是1.4.3以后的版本你会发现多了一个$.type

 

下面我把源码重新复写一下

 

 

//用到两个变量
//class2type是新的
var class2type={},          
      toString =object.prototype.toString();  //这个还是老的

function testType(obj){
      
      return obj ==null ? String(obj) :class2type[toString.call(obj)] || "object";

}

 

当然有了这个以后现在的isFunction,isArray等等多可以调用$.type();

 

ps:我也是QWrap的忠实fans。。。。。

Ps2:你熟悉筛选中的串联api吗?  明天继续

1
0
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics