Size: a a a

JavaScript Noobs — сообщество новичков

2020 September 20

DM

Denys Mikhalenko in JavaScript Noobs — сообщество новичков
(но у тебя это не используется, поэтому разницы ты не заметишь)
источник

GH

Gwin Hot in JavaScript Noobs — сообщество новичков
понял, пасиб
источник

DK

Dmitry Kudryavtsev in JavaScript Noobs — сообщество новичков
Denys Mikhalenko
обычные создают свой scope, а стрелочные используют scope того места, где они созданы
Получается стрелочные не создают свой scope?
источник

DM

Denys Mikhalenko in JavaScript Noobs — сообщество новичков
Все так
источник

DK

Dmitry Kudryavtsev in JavaScript Noobs — сообщество новичков
Denys Mikhalenko
Все так
Может ты про контекст?
источник

DM

Denys Mikhalenko in JavaScript Noobs — сообщество новичков
Не знаю, как по-русски у вас это называется
источник

DM

Denys Mikhalenko in JavaScript Noobs — сообщество новичков
Может и контекст
источник

DK

Dmitry Kudryavtsev in JavaScript Noobs — сообщество новичков
Denys Mikhalenko
Не знаю, как по-русски у вас это называется
Scope - область видимости же
источник

DM

Denys Mikhalenko in JavaScript Noobs — сообщество новичков
Как скажешь )
источник

DM

Denys Mikhalenko in JavaScript Noobs — сообщество новичков
Объясняю на примере:
const obj = {
 fn: function() {
   console.log(this)
 }
}
obj.fn() // выведет {fn: function} т.е. этот самый объект
источник

DK

Dmitry Kudryavtsev in JavaScript Noobs — сообщество новичков
Gwin Hot
понял, пасиб
Если речь о контексте (this), то обычная не создает свой, ее контекст «устанавливается» в зависимости от того, как функция была вызвана.
источник

DM

Denys Mikhalenko in JavaScript Noobs — сообщество новичков
var obj = {
 fn: () => {
   console.log(this)
 }
}
obj.fn() // выведет Window - т.к. создана в контексте Window
(либо Global, если будете в node.js запускать)
источник

DK

Dmitry Kudryavtsev in JavaScript Noobs — сообщество новичков
Denys Mikhalenko
Объясняю на примере:
const obj = {
 fn: function() {
   console.log(this)
 }
}
obj.fn() // выведет {fn: function} т.е. этот самый объект
А если будет создана через new?
источник

DM

Denys Mikhalenko in JavaScript Noobs — сообщество новичков
кто будет создана через new?
источник

DM

Denys Mikhalenko in JavaScript Noobs — сообщество новичков
стрелочные функции не могут быть конструктором
источник

DK

Dmitry Kudryavtsev in JavaScript Noobs — сообщество новичков
Denys Mikhalenko
стрелочные функции не могут быть конструктором
Обычная
источник

DM

Denys Mikhalenko in JavaScript Noobs — сообщество новичков
они не создают контекст
источник

DM

Denys Mikhalenko in JavaScript Noobs — сообщество новичков
если обычная вызвана через new, то создает
источник

DM

Denys Mikhalenko in JavaScript Noobs — сообщество новичков
стрелочные сразу привязываются к тому контексту, где созданы, причем раз и навсегда
источник

DM

Denys Mikhalenko in JavaScript Noobs — сообщество новичков
const fn = () => {}
fn.bind(anotherContext) <-- ничего не делает
источник