Cuando llamas a un objeto 'argumentos' dentro de una función, ¿de dónde viene esta variable? Entonces, en otras palabras, ¿dónde se define? Veamos con un ejemplo:
function func1(a) { console.log(arguments[0]); } func1("yellow"); Voy a hacer una conjetura extrema aquí y diría que proviene de la propiedad estática definida en func1 , ya que contiene los argumentos de la propiedad estática func1.arguments , pero podría estar equivocado. Sin embargo, func1 también contiene otras propiedades estáticas, como 'longitud' y 'nombre', ¿pueden llamarse de la misma manera que se muestra en el ejemplo anterior?
Está definido en la especificación .
Lo proporciona el motor JS cuando se llama a la función.
Cómo se hace eso es un detalle de implementación del motor JS específico.