本系列作为Effective JavaScript的读书笔记。
arguments对象只是一个类似数组的对象,但是它并没有数组对象提供的方法,比如shift,push等。因此调用诸如:arguments.shift(),arguments.push()是错误的。
在Item 20和Item
21中,知道了函数对象上存在call和apply方法,那么是不是可以利用它们来让argu...
分类:
编程语言 时间:
2014-09-19 10:10:25
阅读次数:
174
在函数体内,标识符arguments是指向实参对象的引用,实参对象是一个类数组对象 arguments[0],arguments.length arguments是什么? 答:1:arguments是收到的实参副本 在词法分析中, 首先按形参形成AO的属性,值为undefined 当实参传来...
分类:
其他好文 时间:
2014-09-16 10:30:50
阅读次数:
162
1、在JavaScript中,arguments对象是比较特别的一个对象,实际上是当前函数的一个内置属性。arguments非常类似Array, 但实际上又不是一个Array实例。可以通过如下代码得以证实(当然,实际上,在函数funcArg中,调用arguments是不必要写成 funcArg.a....
分类:
编程语言 时间:
2014-09-09 12:03:38
阅读次数:
198
//自动更新 //arguments对象为其内部属性以及函数形式参数创建getter和setter方法 //因此,改变形参的值会影响到arguments对象的值,反之亦然。 function changeArgument(arr){ ...
分类:
Web程序 时间:
2014-09-09 11:43:58
阅读次数:
180
什么是arguments arguments 是是JavaScript里的一个内置对象,它很古怪,也经常被人所忽视,但实际上是很重要的。所有主要的js函数库都利用了arguments对象。所以agruments对象对于javascript程序员来说是必需熟悉...
分类:
编程语言 时间:
2014-08-22 14:40:19
阅读次数:
157
ECMAScipt中所有函数的参数都是按值传递的。也就是说,把函数外部的值复制给函数内部的参数,就和把值从一个变量复制到另一个变量一样。在向参数传递基本类型的值时,被传递的值会被复制给一个局部变量(形参,arguments对象中的一个元素)。而传递引用类型的值,会把这个值在内存的地址复制给一个局部变...
分类:
其他好文 时间:
2014-08-18 21:54:42
阅读次数:
246
例如:(1)、function factorial(num){ if(num<=1){ return 1; }else{ return num*factorial(num-1); } }//此时是递归算法 var trueFactorial=factori...
分类:
其他好文 时间:
2014-08-18 20:01:52
阅读次数:
179
在javascript中,不需要明确指出参数名,就能访问它们。如: function hi(){ if(arguments[0]=="andy"){ ???? return; } alert(arguments[0]); } 用arguments[0]可以访问第一个参数,如此类推。 利用argumen...
分类:
Web程序 时间:
2014-08-18 09:23:04
阅读次数:
166
1、length属性,我们可以利用Arguments对象的length属性来获取实际传递进的参数有几个。 function a(x, y, z) { ? ? ? ? //arguments.callee指向函数a(),arguments.callee.length==a.length; ? ? ? ? al...
分类:
编程语言 时间:
2014-07-21 23:31:02
阅读次数:
264