--- title: Function.arguments slug: Web/JavaScript/Reference/Global_Objects/Function/arguments tags: - Function - JavaScript - arguments - Властивість - застаріла translation_of: Web/JavaScript/Reference/Global_Objects/Function/arguments ---
Властивість function.arguments
посилається на подібний до масиву об'єкт, який відображає аргументи, передані у функцію. Використовуйте натомість просту змінну {{jsxref("Functions/arguments", "arguments")}}. Ця властивість заборонена у строгому режимі.
Синтаксис function.arguments
є застарілим. Рекомендуємий спосіб звернутися до об'єкта {{jsxref("Functions/arguments", "arguments")}}, що доступний всередині функцій, це просто скористатись змінною {{jsxref("Functions/arguments", "arguments")}}.
У випадку рекурсії, тобто, якщо функція f
з'являється кілька разів у стеку викликів, значення f.arguments
відображає аргументи, що відповідають останньому виклику функції.
Значення властивості arguments зазвичай дорівнює null, якщо немає незавершеного виклику функції у процесі (тобто, функція була викликана, але досі не повернула значення).
function f(n) { g(n - 1); } function g(n) { console.log('до: ' + g.arguments[0]); if (n > 0) { f(n); } console.log('після: ' + g.arguments[0]); } f(2); console.log('повернено: ' + g.arguments); // Результат // до: 1 // до: 0 // після: 0 // після: 1 // повернено: null
Специфікація | Статус | Коментар |
---|---|---|
{{SpecName('ES1')}} | {{Spec2('ES1')}} | Початкове визначення. Реалізоване у JavaScript 1.0. Застаріло через {{jsxref("Functions/arguments", "arguments")}} у ES3. |
{{SpecName('ES5.1', '#sec-10.6', 'arguments object')}} | {{Spec2('ES5.1')}} | Об'єкт {{jsxref("Functions/arguments", "arguments")}} |
{{SpecName('ES6', '#sec-arguments-object', 'arguments object')}} | {{Spec2('ES6')}} | Об'єкт {{jsxref("Functions/arguments", "arguments")}} |
{{SpecName('ESDraft', '#sec-arguments-object', 'arguments object')}} | {{Spec2('ESDraft')}} | Об'єкт {{jsxref("Functions/arguments", "arguments")}} |
{{Compat("javascript.builtins.Function.arguments")}}