TIL: JavaScript Arguments Object
Last updated: Thu Dec 28 2023
JavaScript has a built-in arguments
object in every function that lets you access the arguments passed to a function, even if the function doesn’t have any listed parameters! (What. What.)
function foo() {
// This is fine, apparently?
console.log(arguments[0]);
// Expected output: 1
}
foo(1);
Interestingly, it’s an “array-like” object, so you can use a for-of
loop on it, but it isn’t an array, so you can’t use e.g. forEach
; to get an array, you have to use Array.from()
or the spread operator.