jQuery函数源代码

时间:2011-10-14 09:24:27

标签: jquery

IE 8中的jQuery 1.4.2

当我致电$.isFunction(function() {})时,它会返回true 源代码isFunction功能:

    isFunction: function (obj) {
        return toString.call(obj) === "[object Function]";
    },

当我在控制台toString.call(function() {}) === "[object Function]"中写字时,它会抛出"Object doesn't support this property or method"

缩小版的源代码:

isFunction:function(a){return $.call(a)==="[object Function]"}

当我在控制台$.call(function() {})==="[object Function]"中写字时,它会返回false 为什么代码以不同的方式工作?

2 个答案:

答案 0 :(得分:0)

这个是事实:

 alert(   Object.prototype.toString.apply(t)    );

答案 1 :(得分:0)

JQuery 1.4.2 source(包装器内 )的顶部,toString定义为Object.prototype.toString。全局toString函数与原型toString方法不同,因此结果不同。

// Save a reference to some core methods
toString = Object.prototype.toString,