标签:type fine bsp length 表示 arguments 形式 call 对象
函数属性方法和构造函数
length属性
函数体中,arguments.length表示传入函数的实参个数。
prototype属性
指向一个对象的引用
call方法和apply方法
看作是某个对象的方法,通过调用方法的形式来间接调用函数
call()和apply()的第一个实参是要调用函数的母对象,它是调用上下文,在函数体内通过this来获得对它的引用。
想要以对象o的方法来调用函数f(),可以这样使用call()和apply():f.call(o) f.apply(o);
在严格模式下,call()和apply()的第一个实参都会变成this值,哪怕传入的实参是原始值甚至是null 或undefined。
对于call()来说,第一个调用上下文实参之后的所有实参就是要传入待调用函数的值。
例如 f.call(o,1,2) 传入了两个参数 1,2;
对于apply()方法 传入的实参的形式都放在一个数组中:f.apply(o,[1,2])
传入apply的参数数组可以是类数组对象也可以是真实数组。实际上,可以将当前函数的arguments数组直接传入(另一个函数的)apply来调用另一个函数。
标签:type fine bsp length 表示 arguments 形式 call 对象
原文地址:https://www.cnblogs.com/Damocless/p/11781281.html