من میدانم که هیچ نمیدانم.
بررسی arguments در توابع جاوااسکریپت

آرگومانها arguments یک آبجکت شبیه به آرایه هست که توی همه توابع وجود داره و شامل آرگومانهایی هست که به تابع پاس داده شده:
123456function commit() { console.log(arguments); // [Arguments] { '0': 1, '1': 2, '2': 4 } console.log(arguments[0]); // 1 } commit(1, 2, 4)
به arguments گفته میشه آبجکت شبیه آرایه. این دلیل که شبیه به یک آرایه هست که index اون از صفر شروع میشه و همچنین شامل پراپرتی length هست. اما متدهایی که یک آرایه داره مثل foreEach و map رو نداره.
همچنین Arrow Function ها چنین متغیری ندارن:
12345commit = () => { console.log(arugments); } commit(1, 2, 4); // ReferenceError: arugments is not defined
پس بجای اون میتونیم از پارامتر rest یا سه نقطه استفاده کنیم:
12345commit = (...args) => { console.log(args); } commit(1, 2, 4); // [ 1, 2, 4 ]
پارامتر rest یک آرایه واقعی هست و همهی متدها و پراپرتیهایی که یک آرایه معمولی داره رو شامل میشه.
منبع:
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/arguments
https://dev.to/macmacky/70-javascript-interview-questions-5gfi
مطلبی دیگر از این انتشارات
پذیرش بیتکوین توسط اولین کشور آفریقایی؛ جمهوری آفریقای مرکزی بیتکوین را رسماً پذیرفت!
مطلبی دیگر از این انتشارات
استیک کاردانو چگونه انجام میشود؟
مطلبی دیگر از این انتشارات
10 کانال برتر متاورس یوتیوب برای اشتراک در سال 2022