• javascript:函数的apply,call方法和length属性


     看js的资料,随手记下一些认为实用的东东,以飨和我一样正在学习的诸位看官。
         “JavaScript 为函数对象定义了两个方法:apply 和call,它们的作用都是将函数绑定到另外一个对象上去运行,两者仅在定义参数的方式有所区别:
         Function.prototype.apply(thisArg,argArray); Function.prototype.call(thisArg[,arg1[,arg2…]]); 从函数原型可以看到,第一个参数都被取名为thisArg,也就是说,所有函数内部的this 指针都会被赋值为thisArg,这就达到了将函数作为另外一个对象的方法运行的目的。两个方法除了thisArg 参数,都是为Function 对象传递的参数。下面的代码说明了apply 和call 方法的工作方式:"(上面这段抄自<<征服ajax>>电子书,如有版权纠纷,请联系电子书作者,与本人无关)

    Code


         代码是廉价的(Code is cheap),拷贝粘贴试一下,本人机器运行通过。
         函数对象还有一个与参数相关的属性length,这里看清楚了,是与“参数”相关的属性,没错,字面理解,就是参数个数,不说了,看代码:

    Code

         与length属性不同,js有一个传递给函数的隐含参数,arguments,它也有一个length属性,下篇细说从头,洗洗睡了。


    作者:Jeff Wong
    出处:http://jeffwongishandsome.cnblogs.com/
    本文版权归作者和博客园共有,欢迎围观转载。转载时请您务必在文章明显位置给出原文链接,谢谢您的合作。

  • 相关阅读:
    更新 箫心病毒分析专家2006 build 5.23(C#2.0)
    SOA也是一种设计模式
    SOA在美国和中国的差异
    单服务器配置部署Visual Studio 2005 Team Foundation Server步骤
    无废话ExtJs 入门教程十六[页面布局:Layout]
    无废话ExtJs 入门教程七[登陆窗体Demo:Login]
    无废话ExtJs 入门教程十八[树:TreePanel]
    无废话ExtJs 入门教程十一[下拉列表:Combobox]
    无废话ExtJs 入门教程十[单选组:RadioGroup、复选组:CheckBoxGroup]
    无废话ExtJs 入门教程八[脚本调试Firefox:firebug]
  • 原文地址:https://www.cnblogs.com/jeffwongishandsome/p/1312113.html
Copyright © 2020-2023  润新知