Function
2022年10月14日大约 2 分钟
Function.length
函数对象的一个属性值,指该函数有多少个必须要传入的参数,即形参的个数,形参的数量不包括剩余参数个数,仅包括第一个具有默认值之前的参数个数
名称 | 描述 |
---|---|
Function.name | 函数实例的名称 |
Function.prototype.apply()
- 描述:调用一个具有给定 this 值的函数,以及作为一个数组(或类似数组对象)提供的参数
- 语法:
func.apply(thisArg, [argsArray])
- 参数
- thisArg:在 func 函数运行时使用的 this 值
- this可能不是该方法看到的实际值
- 非严格模式下,则指定为 null 或 undefined 时会自动替换为指向全局对象,原始值会被包装
- argsArray:一个数组或者类数组对象,其中的数组元素将作为单独的参数传给 func 函数
- 如果该参数的值为 null 或 undefined,则表示不需要传入任何参数
- 从ECMAScript 5 开始可以使用类数组对象
- thisArg:在 func 函数运行时使用的 this 值
- 返回值:调用有指定this值和参数的函数的结果,若该方法没有返回值,则返回 undefined
Function.prototype.call()
- 描述:使用一个指定的 this 值和单独给出的一个或多个参数来调用一个函数
- 语法:
function.call(thisArg, arg1, arg2, ...)
- 参数
- thisArg:在 func 函数运行时使用的 this 值
- this可能不是该方法看到的实际值
- 非严格模式下,则指定为 null 或 undefined 时会自动替换为指向全局对象,原始值会被包装
- arg1, arg2, ...:指定的参数列表
- thisArg:在 func 函数运行时使用的 this 值
- 返回值:调用有指定this值和参数的函数的结果,若该方法没有返回值,则返回 undefined
Function.prototype.bind()
- 描述:创建一个新的函数,在 bind() 被调用时,这个新函数的 this 被指定为 bind() 的第一个参数,而其余参数将作为新函数的参数,供调用时使用
- 语法:
function.bind(thisArg[, arg1[, arg2[, ...]]])
- 参数
- thisArg:在 func 函数运行时使用的 this 值
- this可能不是该方法看到的实际值
- 非严格模式下,则指定为 null 或 undefined 时会自动替换为指向全局对象,原始值会被包装
- arg1, arg2, ...:指定的参数列表
- thisArg:在 func 函数运行时使用的 this 值
- 返回值:返回一个原函数的拷贝,并拥有指定的 this 值和初始参数