每个函数都包含两个属性:length 和 prototype length:当前函数希望接受的命名参数的个数 prototype:是保存他们所有实力方法的真正所在
代码如下:
每个函数都包含两个非继承而来的方法:apply() 和 call() 这两个方法都是在特定的作用域中调用函数,实际上等于设置函数体内this对象的值 首先apply()接受两个参数:一个是函数运行的作用域,另一个参数数组(可以是数组实例也可以是arguments对象)
代码如下:
403">
function sum(num1,num2) {
return num1 + num2;
}
function callSum1(num1,num2) {
return sum.apply(this,arguments);//传入arguments对象
}
function callSum2(num1,[num1,num2]);
}
alert(callSum1(10,10));//20
alert(callSum2(10,20));//30
其次,call方法第一个参数没有变化,变化的是其余的参数都是传递参数,传递给函数的参数需要逐个列举出来
代码如下: