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>>电子书,如有版权纠纷,请联系电子书作者,与本人无关)

ContractedBlock.gif Code


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

ContractedBlock.gif Code

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








本文转自JeffWong博客园博客,原文链接:http://www.cnblogs.com/jeffwongishandsome/archive/2008/10/15/1312113.html,如需转载请自行联系原作者

目录
相关文章
|
10天前
|
JavaScript API
js【最佳实践】遍历数组的八种方法(含数组遍历 API 的对比)for,forEach,for of,map,filter,reduce,every,some
js【最佳实践】遍历数组的八种方法(含数组遍历 API 的对比)for,forEach,for of,map,filter,reduce,every,some
23 1
|
12天前
|
JavaScript 前端开发
JavaScript中exec()方法详解
在这个示例中,exec()方法会找到两个匹配项,并打印出它们在字符串中的位置。
11 1
|
11天前
|
存储 Web App开发 JavaScript
浏览器【详解】Cookie(含Cookie的起源,属性,个数和大小限制,作用,优点,缺点,JS 的操作方法等)
浏览器【详解】Cookie(含Cookie的起源,属性,个数和大小限制,作用,优点,缺点,JS 的操作方法等)
13 0
|
11天前
|
JavaScript
js 延时执行代码的最佳实践 —— 自定义 sleep 函数
js 延时执行代码的最佳实践 —— 自定义 sleep 函数
12 0
|
11天前
|
JavaScript
js【详解】bind()、call()、apply()( 含手写 bind,手写 call,手写 apply )
js【详解】bind()、call()、apply()( 含手写 bind,手写 call,手写 apply )
9 0
|
12天前
|
JavaScript
JS数组操作---删除,arr.pop()方法从数组中删除最后一个元素,并返回该元素的值,arr.shift() 删除第一个值,arr.splice()方法,删除指定元素,arr.splice,从第一
JS数组操作---删除,arr.pop()方法从数组中删除最后一个元素,并返回该元素的值,arr.shift() 删除第一个值,arr.splice()方法,删除指定元素,arr.splice,从第一
|
12天前
|
JavaScript
Js,定义数组的方法,let 数组名 = [数据1,数据2,........,数据n],取值方法,数组名[x],arr[0],let sum sum = sum + arr[0],求和的写法,平均值
Js,定义数组的方法,let 数组名 = [数据1,数据2,........,数据n],取值方法,数组名[x],arr[0],let sum sum = sum + arr[0],求和的写法,平均值
|
12天前
|
JavaScript
js 高频实用函数封装汇总(持续更新)
js 高频实用函数封装汇总(持续更新)
10 0
|
13天前
|
JavaScript
js 数组移除指定元素【函数封装】(含对象数组移除指定元素)
js 数组移除指定元素【函数封装】(含对象数组移除指定元素)
11 0
|
13天前
|
JavaScript
JS 数组去重(含简单数组去重【5种方法】、对象数组去重【2种方法】)
JS 数组去重(含简单数组去重【5种方法】、对象数组去重【2种方法】)
14 0