Size: a a a

2018 December 13

АВ

Антон Виноградов in БЭМ
Elect Freak
1) Меня смущает, что в методе объекта «а» функция стрелочная и возвращает (this) этот же объект, т.е. имеет собственный this, хотя не должна, как в случае с  объектом object
2) Как переписать на обычную функцию?
Тебе немного не хватает понимания замыканий
источник

АВ

Антон Виноградов in БЭМ
Elect Freak
В смысле стрелочную переписать на обычную?
Да
источник

D

Dzianis in БЭМ
в object все ок
источник

АВ

Антон Виноградов in БЭМ
Везде все ок
источник

EF

Elect Freak in БЭМ
Dzianis
в object все ок
именно, а вот в "а" нет
источник

EF

Elect Freak in БЭМ
Антон Виноградов
Везде все ок
ну, то есть ок, видимо, я чего-то не догоняю
источник

EF

Elect Freak in БЭМ
переписал на обычную, результат тот же
источник

D

Dzianis in БЭМ
в а не ок
источник

EF

Elect Freak in БЭМ
Антон Виноградов
Везде все ок
источник

EF

Elect Freak in БЭМ
вот с обычной. Но тут меня вроде не смущает ничего
источник

АВ

Антон Виноградов in БЭМ
Каждая ф-ция создаёт новое замыкание, новый контекст. Объект нет. Конструктор в данном случае создаёт новый контекст, который наследует стрелочная ф-ция. Метод в объекте не создаёт новый контекст и метод наследует глобальный window.
источник

EF

Elect Freak in БЭМ
почему конструктор должен задавать новый контекст? просто потому что это функция и в ней объявляется другая?
источник

EF

Elect Freak in БЭМ
вот тут почему-то контекст не создается
источник

АВ

Антон Виноградов in БЭМ
источник

EF

Elect Freak in БЭМ
господи, я знаю что это такое
источник

EF

Elect Freak in БЭМ
причем оттуда в том числе
источник

АВ

Антон Виноградов in БЭМ
Elect Freak
господи, я знаю что это такое
Тогда ты прав и V8 работает не правильно. Репорть баг ;)
источник

EF

Elect Freak in БЭМ
как это объект получает this в замыкании?
источник

EF

Elect Freak in БЭМ
замыкание - это когда функция достает что-нибудь из окружающего контекста
источник

EF

Elect Freak in БЭМ
из другой функции, в которой она была объявлена, например
источник