类数组不是数组,是对象。不能在类数组对象上调用数组方法。在函数中,arguments对象代表实参。arguments对象是一个数组对象。
- 可以通过[]获取参数,如arguments[0]。
- 可以使用length属性获取实参的个数,例如,arguments.length
类数组转换成数组
- 扩展运算符
function chekArgs(){
return [...arguments];
};
let result = chekArgs(1, 2);
// [1, 2]
- Array.from
Array.from(arguments);
- slice,使用以下两种方式都可以
Array.prototype.slice.call(arguments)
// 或者
[].slice.call(arguments)