Моя боль в JavaScript: когда this и переменные становятся головоломкой

от автора

Не спорю и не критикую учебные подходы. Просто делюсь своей болью: как тавтология в примерах наследования (this.name = name) вгоняла в ступор на старте.

сбитый с толку pre-junior

сбитый с толку pre-junior

Сейчас, когда я работаю с наследованием и понимаю контекст this, мне очевидно😎, зачем в примере используется this.name = name. Но на старте моего пути это было одной из тех вещей, которые сбивали с толку🤯.

Когда видишь подобный пример:

function Person(name, age, gender) {   this.name = name;   this.age = age;   this.gender = gender; } 

Кажется, что это просто «одно и то же имя равно самому себе». Ты пишешь код, но не до конца понимаешь, чем this.name отличается от name, и зачем здесь нужно this.

Понимание приходит со временем, но на первых порах это превращается в простое следование примеру. В голове остаётся ощущение магии🔮: «Я пишу то же самое, но почему это работает?» И только позже осознаёшь разницу между параметрами функции и свойствами объекта.

Я поддерживаю подход, когда сложные вещи объясняют через простые и жизненные примеры. Это работает. Люди, животные, профессии — прекрасные темы для демонстрации. Но тавтология переменных вроде this.age = age мне добавляла путаницы, чем помогала разобраться🤪.


Давайте обсудим? У кого так же было? Или может было что-то иное?


ссылка на оригинал статьи https://habr.com/ru/articles/867360/


Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *