在javascript中,函数的length属性表示函数希望接受到的命令参数的个数。
例子:
function sayName(name) {
alert(name);
}
function sum(num1, num2) {
return num1 + num2;
}
function sayHi() {
alert("hi");
}
alert(sayName.length); //1
alert(sum.length); //2
alert(sayHi.length); //0
以上代码定义了3个函数,但每个函数接收的命名参数个数不同。
首先,sayName()函数定义了一个参数,因此其length属性的值为1。类似地,sum()函数定义了两个参数,结果其length属性中保存的值为2。而sayHi()没有命名参数,所以其length值为0。
在ECMAScript核心所定义的全部属性中,有个prototype属性。
对于ECMAScript中的引用类型而言,prototype是保存它们所有实例方法的真正所在。
诸如toString()和valueOf()方法实际上都保存在prototype名下,只不过是通过各自对象的实例访问罢了。