手机
当前位置:查字典教程网 >编程开发 >Javascript教程 >Function.prototype.call.apply结合用法分析示例
Function.prototype.call.apply结合用法分析示例
摘要:昨天在网上看到一个很有意思的js面试题,就跟同事讨论了下,发现刚开始很绕最后豁然开朗,明白过来之后发现还是挺简单的,跟大家分享下!题目如下:...

昨天在网上看到一个很有意思的js面试题,就跟同事讨论了下,发现刚开始很绕最后豁然开朗,明白过来之后发现还是挺简单的,跟大家分享下!

题目如下:var a = Function.prototype.call.apply(function(a){return a;}, [0,4,3]);alert(a);

分析步骤如下:

1、将Function.prototype.call当成整体,call方法是由浏览器实现的本地方法,是函数类型的内部方法

var a = (Function.prototype.call).apply(function(a){return a;}, [0,4,3]);

2、fun.apply(obj,args)等价于obj.fun(args),这一步是重点,必须理解!

(function(a){return a;}).apply(0,[4,3])

(function(a){return a;}).call(0,4,3)

3、 到这步结果就很明显了,a就是4,alert的结果就是4

这个题目迷惑的点就在于Function.prototype.call,理解好了,就清晰明了了!

【Function.prototype.call.apply结合用法分析示例】相关文章:

prototype 1.5 & scriptaculous 1.6.1 学习笔记

javascript原型模式用法实例详解

JQuery中DOM事件合成用法实例分析

jquery任意位置浮动固定层插件用法实例

Prototype1.4手册

javascript组合使用构造函数模式和原型模式实例

JavaScript中的this,call,apply使用及区别详解

js设置document.domain实现跨域的注意点分析

JavaScript中String.prototype用法

JQuery中Text方法用法实例分析

精品推荐
分类导航