首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jQuery函数源代码

jQuery函数源代码
EN

Stack Overflow用户
提问于 2011-10-14 17:24:27
回答 2查看 813关注 0票数 2

IE 8中的jQuery 1.4.2

当我调用$.isFunction(function() {})时,它返回true

源码isFunction函数:

代码语言:javascript
复制
    isFunction: function (obj) {
        return toString.call(obj) === "[object Function]";
    },

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

精简版源码:

代码语言:javascript
复制
isFunction:function(a){return $.call(a)==="[object Function]"}

当我在控制台$.call(function() {})==="[object Function]"中编写时,它返回false

为什么代码以不同的方式工作?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-10-14 17:39:32

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

代码语言:javascript
复制
// Save a reference to some core methods
toString = Object.prototype.toString,
票数 1
EN

Stack Overflow用户

发布于 2011-10-14 17:27:31

这个是事实:

代码语言:javascript
复制
 alert(   Object.prototype.toString.apply(t)    );
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7765602

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档