任何一个函数
内部都会有一个arguments
对象, 该对象并不是Array。 而是称为array-like
。arguments
对象可以通过Array.from(arguments)
转换为Array。
ECMAScript
支持可变参数,参数不由函数定义的时候决定,而是由调用的时候决定, 如果你想要表达参数不定的情形,那么你可以使用arguments
对象来判断参数个数,以及每个参数的类型等, 从而决定如何实现功能。
示例:
var elements = [];
function add(e) {
if (arguments.length == 1) {
elements.push(arguments[0]);
} else if (arguments.length >= 2) {
for (var i = 0; i < arguments.length; i++) {
elements.push(arguments[i]);
}
}
}