El arguments
objeto en JavaScript es una verruga extraña: actúa como una matriz en la mayoría de las situaciones, pero en realidad no es un objeto de matriz. Ya que es realmente algo completamente distinto , que no tiene las funciones útiles de Array.prototype
como forEach
, sort
, filter
, y map
.
Es trivialmente fácil construir una nueva matriz a partir de un objeto de argumentos con un bucle for simple. Por ejemplo, esta función ordena sus argumentos:
function sortArgs() {
var args = [];
for (var i = 0; i < arguments.length; i++)
args[i] = arguments[i];
return args.sort();
}
Sin embargo, esto es algo lamentable que debe hacerse simplemente para obtener acceso a las funciones de matriz de JavaScript extremadamente útiles. ¿Hay una forma integrada de hacerlo usando la biblioteca estándar?