js函数
Posted Damocless
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js函数相关的知识,希望对你有一定的参考价值。
函数属性方法和构造函数
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来调用另一个函数。
以上是关于js函数的主要内容,如果未能解决你的问题,请参考以下文章