码迷,mamicode.com
首页 > Web开发 > 详细

jquery原码记录1

时间:2015-04-12 11:54:32      阅读:125      评论:0      收藏:0      [点我收藏+]

标签:

纠结了很久,this为什么能输出[],还以为jquery做了什么初始化操作,结果找源码怎么找都找不到,最后在http://segmentfault.com/q/1010000000611454找到了解释

这个其实不难,典型的 Ducking Type 应用。一个 Javascript 对象,只要定义了 length 属性和 splice 方法,它看起来就像一个数组。例如:


var x = {
  ‘0‘: ‘foo‘,
  ‘1‘: ‘bar‘,
  length: 2,
  splice: function () {}
};

console.log(x);  // ["foo", "bar", splice: function]
好吧,这个对我很难,谁让我是颗营养不良的小菜。
然后被chrome的console.log坑了,如果是在脚本里输入console.log($.fn),输出
技术分享
直接在控制台输入$.fn,输出[]
然后营养不良的小白菜就生生以为这是不同的东西,找啊找啊找原因,找啊找啊就是找不到。。。嘛,记录一下心酸史
jQuery.fn = jQuery.prototype = {
    constructor: jQuery,
    init: function( selector, context, rootjQuery ) {
        var match, elem, ret, doc;

        // Handle $(""), $(null), $(undefined), $(false)
        if ( !selector ) {
            debugger
            return this;
        }

继续看源码,我要患上巨菜症。。。

 

jquery原码记录1

标签:

原文地址:http://www.cnblogs.com/haitangxun/p/4419236.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!