Size: a a a

2021 January 17

АК

Александр Козлов... in Front-end chat
Oleg Junior
в функцию
Когда ты создаешь функцию, у нее создается своя область видимости, у каждой такой области видимости есть свой this
источник

АК

Александр Козлов... in Front-end chat
Но у стрелочных функций своего this нет
источник

OJ

Oleg Junior in Front-end chat
Александр Козлов
Когда ты создаешь функцию, у нее создается своя область видимости, у каждой такой области видимости есть свой this
да. но я именно про то как вис туда передается
источник

АК

Александр Козлов... in Front-end chat
Oleg Junior
да. но я именно про то как вис туда передается
А зачем this туда передавать если он уже доступен внутри контекста функции?
Если ты хочешь понять как его подменять то почитай про call, apply, bind
источник

OJ

Oleg Junior in Front-end chat
Александр Козлов
А зачем this туда передавать если он уже доступен внутри контекста функции?
Если ты хочешь понять как его подменять то почитай про call, apply, bind
ты не понял меня. я имел ввиду как технически под капотом это работает?
источник

АК

Александр Козлов... in Front-end chat
Oleg Junior
ты не понял меня. я имел ввиду как технически под капотом это работает?
Создается функция -> создается контекст выполнения -> создается this
источник

АК

Александр Козлов... in Front-end chat
Можешь открыть движок chromium на гитхабе и раскопать эту тему глубже, как это устроено
источник

АК

Александр Козлов... in Front-end chat
Oleg Junior
ты не понял меня. я имел ввиду как технически под капотом это работает?
источник

OJ

Oleg Junior in Front-end chat
Александр Козлов
Создается функция -> создается контекст выполнения -> создается this
а контекст выполнения? где-то читал что у каждого обьекта функции есть ссылка [[Scope]]
источник

АК

Александр Козлов... in Front-end chat
Oleg Junior
а контекст выполнения? где-то читал что у каждого обьекта функции есть ссылка [[Scope]]
Есть цикл статей от ру-вдс на хабре:
https://m.habr.com/ru/company/ruvds/blog/337042/
Там в конце есть линк на все статьи, прочитай их)
источник

АК

Александр Козлов... in Front-end chat
https://github.com/azat-io/you-dont-know-js-ru
Потом вот это читни
источник

OJ

Oleg Junior in Front-end chat
все эти базовые вещи я давно изучил. мне интересно стало более глубже узнать как это работает. просто для общего развития
источник

АК

Александр Козлов... in Front-end chat
Oleg Junior
все эти базовые вещи я давно изучил. мне интересно стало более глубже узнать как это работает. просто для общего развития
Ну там не сказать, что базовые вещи описаны, как раз таки расписаны вещи, на которые обычно всем пофигу.
Ну если это все прочитал, странно, что задаешь такие вопросы.
Тогда иди копай движок браузера) станет все 100% ясно
источник

OJ

Oleg Junior in Front-end chat
Александр Козлов
Ну там не сказать, что базовые вещи описаны, как раз таки расписаны вещи, на которые обычно всем пофигу.
Ну если это все прочитал, странно, что задаешь такие вопросы.
Тогда иди копай движок браузера) станет все 100% ясно
да? посмотрю еще, может я когда читал давно тогда не вникал еще.
источник

OJ

Oleg Junior in Front-end chat
К вопросу как передается this  в функцию при вызове. Я посмотрел в спеке там так написано:
[[Call]] ( thisArgument, argumentsList )
The [[Call]] internal method for an ECMAScript function object F is called with parameters thisArgument and argumentsList, a List of ECMAScript language values.
Похоже что да, я был прав, сначало передается this нулевым аргументом ( thisArgument ) а потом уже аргументы для функции ( argumentsList ) если я правильно понял
источник

АК

Александр Козлов... in Front-end chat
Oleg Junior
К вопросу как передается this  в функцию при вызове. Я посмотрел в спеке там так написано:
[[Call]] ( thisArgument, argumentsList )
The [[Call]] internal method for an ECMAScript function object F is called with parameters thisArgument and argumentsList, a List of ECMAScript language values.
Похоже что да, я был прав, сначало передается this нулевым аргументом ( thisArgument ) а потом уже аргументы для функции ( argumentsList ) если я правильно понял
Скинь ссылку
источник

OJ

Oleg Junior in Front-end chat
Александр Козлов
Скинь ссылку
https://262.ecma-international.org/#sec-ecmascript-function-objects-call-thisargument-argumentslist  если я ошибся напиши пожалуста об этом. а то я джун, мог и не правильно понять
источник

АК

Александр Козлов... in Front-end chat
Oleg Junior
https://262.ecma-international.org/#sec-ecmascript-function-objects-call-thisargument-argumentslist  если я ошибся напиши пожалуста об этом. а то я джун, мог и не правильно понять
Вроде все ок, как раз тут становится понятно почему если по разному вызывать функции у них будет разный this
источник

OJ

Oleg Junior in Front-end chat
Александр Козлов
Вроде все ок, как раз тут становится понятно почему если по разному вызывать функции у них будет разный this
ага. там про все это написано. но читать чтобы понять реально тяжело. для меня по крайней мере. но конечно рядовому разработчику достаточно просто на базовом уровне знать как в статьях обучающих пишут. это я так для того чтобы блеснуть на совбесе
источник

АК

Александр Козлов... in Front-end chat
Oleg Junior
ага. там про все это написано. но читать чтобы понять реально тяжело. для меня по крайней мере. но конечно рядовому разработчику достаточно просто на базовом уровне знать как в статьях обучающих пишут. это я так для того чтобы блеснуть на совбесе
Будет странно, если тебе на собесе будут эти вопросы задавать
источник