JavaScript Function.name — ім'я функції


Властивість name повертає ім'я функції — рядком.

автор: NagarD

Загальний опис

Найцікавіше — звідки береться ім'я в анонімної функції. Стрілкова функція власного імені не має, але якщо присвоїти її змінній, рушій виведе ім'я зі змінної: const load = () => {} дає load.name === 'load'.

Це дуже допомагає в стеках помилок і журналах — анонімні функції в них більше не безіменні.

Прив'язана через bind() функція отримує префікс: bound load.

Властивість лише читається (точніше, її не можна змінити звичайним присвоєнням).

автор: NagarD

Переглядачі

Підтримка: стаціонарні переглядачі
Переглядач Google Chrome Mozilla Firefox Apple Safari Opera Microsoft EDGE Microsoft Internet Explorer
name 1+ 1+ 1+ 3+ 12+ 9+
Підтримка: мобільні переглядачі
Переглядач Mobile Google Android Mobile Google Chrome Mobile Mozilla Firefox Mobile Apple Safari
name yes yes yes yes

Приклади

+ запропонувати свій приклад у пісочниці

Ім'я береться зі змінної — навіть у стрілки.

function loadUser() {}
const loadPost = () => {};

console.log(loadUser.name); // 'loadUser'
console.log(loadPost.name); // 'loadPost' — виведено зі змінної!

// bind додає префікс
console.log(loadUser.bind(null).name); // 'bound loadUser'

// корисно в журналах
function measure(fn) {
    console.log('Викликаємо', fn.name);

    return fn();
}
автор: NagarD

Коментарі

Коментарів ще немає — будьте першим!

Відповідь для

Увійдіть — коментар з'явиться одразу, без капчі й очікування перевірки.

Пропозиція правки

Ваша версія — : після перевірки замінить чинну. Нова порада чи нотатка — з'явиться на сторінці після перевірки.

Ви гість — діють добові ліміти. Увійдіть, щоб пропонувати без капчі.

Ваша версія секції «»: після перевірки замінить чинну.

Ви гість — діють добові ліміти. Увійдіть, щоб пропонувати без капчі.

Ваша версія опису «»: після перевірки замінить чинну.

Ви гість — діють добові ліміти. Увійдіть, щоб пропонувати без капчі.

Зворотний зв'язок
Вхід