论坛首页 入门技术论坛

jquery1.43源码分析之核心部分

浏览 27282 次
该帖已经被评为新手帖
作者 正文
   发表时间:2010-10-14  
window 和 undefined 的写法,有个很重要的原因是压缩优化。通过变量传递进去,在压缩时,可以把 window, undefined 简略成 w, u. 由于jQuery 源码不小,这样压缩能节省不少大小。
1 请登录后投票
   发表时间:2010-10-14  
jQuery的确是一个很好用的js框架,用了几次感觉很不错,以前一直都是自己写js代码,很麻烦的。
0 请登录后投票
   发表时间:2010-10-14  
lifesinger 写道
window 和 undefined 的写法,有个很重要的原因是压缩优化。通过变量传递进去,在压缩时,可以把 window, undefined 简略成 w, u. 由于jQuery 源码不小,这样压缩能节省不少大小。


茅塞顿开呀
0 请登录后投票
   发表时间:2010-10-14  
var a = {}; 
a[0] = 1; 
a[1] = 2; 
Array.prototype.push(a, 3); 
alert (a.length)   // a没有length属性, 默认的给0值, 所以结果为1

我运行弹出的是undefined,不是1,不过Object对象真的可以当数组用,太奇妙了
0 请登录后投票
   发表时间:2010-10-14   最后修改:2010-10-14
Array.prototype.push.call(a, 3);
少写个.call
sorry

另外IE6还要显示设置length属性
var a = {}; 
a[0] = 1; 
a[1] = 2;
a.length = undefined都可以.
0 请登录后投票
   发表时间:2010-10-14   最后修改:2010-10-14
lifesinger 写道
window 和 undefined 的写法,有个很重要的原因是压缩优化。通过变量传递进去,在压缩时,可以把 window, undefined 简略成 w, u. 由于jQuery 源码不小,这样压缩能节省不少大小。



现在想想,常看到Ext中有些库中用个变量把window, document存起来,也应该有这个作用。
jQuery细节简直考虑到极致了...

这也算是一种解耦合吧,把外部的关联封装起来,压缩工具也能做针对的压缩混淆。
0 请登录后投票
   发表时间:2010-10-14  
lifesinger 写道
window 和 undefined 的写法,有个很重要的原因是压缩优化。通过变量传递进去,在压缩时,可以把 window, undefined 简略成 w, u. 由于jQuery 源码不小,这样压缩能节省不少大小。


谢谢雕兄, 我对压缩原理不熟悉, 有机会再研究下.
0 请登录后投票
   发表时间:2010-10-15  
楼主的两篇文章都看了 很不错 希望楼主继续
0 请登录后投票
   发表时间:2010-10-15  
引用
clone = src && jQuery.isArray(src) ? src : [];



引用
src = target[ name ];


sr应该可能是undefined 那么clone的值是什么啊 是undefined 吗?

引用
//如果target本来为undefined, 要设一个不含属性的默认值, 且类型要跟copy对象保持一致. 

那么 这个是不是说错了啊?
0 请登录后投票
   发表时间:2010-10-15  
似乎是的, 应该是src. 罪过.见谅.
0 请登录后投票
论坛首页 入门技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics