Как связать 'this' с функцией стрелки объекта? - PullRequest
0 голосов
/ 31 августа 2018

Предположим, у нас есть объект profile со свойствами name и getName метод (функция стрелки).

profile = {
    name: 'abcd',
    getName: () => {
        console.log(this.name);
    }
}

Я хочу вызвать метод getName, сохранив функцию стрелки без изменений, а not , изменив ее на обычную функцию.

Как я могу получить вывод abcd, позвонив getName().

Вы можете добавить выражения внутри getName.

Поможет ли call() или bind()? Если да, то как?

НЕ ИЗМЕНЯЙТЕ ФУНКЦИЮ СТРЕЛКИ В РЕГУЛЯРНУЮ ФУНКЦИЮ

- РЕДАКТИРОВАНИЕ -

Я просто хочу спросить, как мы можем использовать функции стрелок внутри объектов, чтобы они отражали результаты, которые мы получим в обычных функциях.

Это был просто вопрос для интервью.

1 Ответ

0 голосов
/ 31 августа 2018

Не изменяя его на обычную функцию, единственный способ получить свойство name из внутренней функции - получить доступ к внешнему имени переменной , которая равна profile:

const profile = {
    name: 'abcd',
    getName: () => {
        console.log(profile.name);
    }
}

profile.getName();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...