arguments
JavaScript 中的对象是一个奇怪的疣——它在大多数情况下就像一个数组,但它实际上不是一个数组对象。因为它是真正的完全是另一回事,它没有从有用的功能Array.prototype
类似forEach
,sort
,filter
,和map
。
使用简单的 for 循环从参数对象构造一个新数组非常容易。例如,此函数对其参数进行排序:
function sortArgs() {
var args = [];
for (var i = 0; i < arguments.length; i++)
args[i] = arguments[i];
return args.sort();
}
然而,仅仅为了访问非常有用的JavaScript数组函数而不得不这样做是一件相当可怜的事情。是否有使用标准库的内置方法?