Теперь Кью работает в режиме чтения

Мы сохранили весь контент, но добавить что-то новое уже нельзя

Какой уровень JavaScript необходим для начала изучения фреймворка?

Какие основы JavaScript должен знать новичок, прежде чем приступить к изучению React.js или других фреймворков и библиотек JavaScript?
ТехнологииПрограммирование+3
Анонимный вопрос
  ·   · 4,5 K
Веб-разработчик, геймер, специалист по этике  · 18 февр 2022
Первое и самое главное, что вам нужно знать в Javascript прежде чем даже задумываться о том, чтобы использовать любой фреймворк - это то, что в современном жабоскрипте на продакшене никто не пишет непосредственно код, который будет выполнять браузер.
Вы практически на 100% всегда будете использовать какой-то препроцессор из командной строки. Все три мажорных фреймворка современных: React.js, Angular.js, Vue.js, используют отдельные консольные приложения для того, чтобы превратить тот код, который вы пишете в IDE, в тот код, который собственно будет выполнен в браузере. Я уж молчу про обёртки вокруг них типа Next.js и запредельную эзотерику для профессионалов типа RxJs и Elm. От вас ожидают, что вам комфортно работать с командной строкой, понимать, что такое Node.js и зачем оно нужно, понимать, что такое npm, зачем оно нужно и как с ним работать, как написать свой скрипт в package.json, как настроить свою IDE для нормальной работы в этой среде, как подключить Typescript и зачем он нужен, что такое ESLint и Prettier и как их настроить.
Это то, чего вам явно не скажут в требованиях, просто авторы документации подразумевают это из-за профессиональной деформации.
Чисто языковые возможности Javascript, которые вам нужны для использования фреймворков, на основе туториала по реакту, туториала по ангуляру и туториала по вуе, довольно банальны, кроме ангуляра, который, как и всё от гугла, пробивает небеса неортодоксальностью. Например:
  1. умение бегло писать функции любых видов, анонимные, именованные, асинхронные;
  2. понимание понятия области видимости, замыкания и передачи аргументов в функцию по ссылке;
  3. "классы" объектов в Javascript, "наследование", семантика this;
  4. классические функции высших порядков: `map`, `reduce`, `filter`;
  5. самые распространённые объекты DOM и их API: `document`, `window`, `Element`, самые распространённые события типа клика, наведения курсора, нажатия на клавишу клавиатуры;
  6. event bubbling в DOM - вы обязаны полюбить эту страницу всем сердцем если вообще хотите какое-то будущее на фронтэнде;
  7. API самых часто используемых объектов стандартного JavaScript: Promise, Array, Object, Date, String;
  8. Promise, да; удачи, если что :) ;
  9. ES7-импорты, где они доступны, почему и чем они отличаются от импортов в Webpack и Typescript, зачем вообще нужны бандлеры типа Webpack, почему переменная, объявленная в модуле, доступна только в этом модуле, а переменная, объявленная в top-level обычного скрипта (не модуля), становится глобальной;
  10. Синтаксис деструктуризации, синтаксис краткой записи стрелочных функций, синтаксис "свойств" "классов" ES6 очень помогут читать чужой код;
  11. ????
  12. PROFIT!
Очень полезно будет знать взаимосвязь между HTML, CSS и Javascript в DOM: как из HTML мы можем вызвать скрипт на Javascript, как в CSS мы можем поцелить элемент в документе HTML, как из Javascript манипулировать как документом, так и стилями.
Конечно же, естественно вы должны знать элементарные основы императивного программирования: переменные, разрушающее присваивание, циклы, развилки, но это уже настолько очевидно, что не знаю, нужно ли вообще об этом говорить.
1 эксперт согласен
Всё так. Если знать js на таком уровне, то любой фреймворк дастся со сравнительной лёгкостью.
старший разработчик в pseven.io  · 13 янв 2022
Изучать язык и фреймворк можно параллельно, и это совсем не так долго как может показаться. Если у вас уже есть опыт в программировании на другом языке, то основы JavaScript вы изучите за неделю. Есть разные тонкости, которые... Читать далее
Что-то осталось непонятно? Спроси в нашей группе в Телеграме!Перейти на t.me/jstsmentor
2 эксперта согласны
Нельзя учить параллельно язык и фреймворк сперва нужно набраться базовых знаний в языке, а потом уже фреймворк... Читать дальше
Node Backend developer JS/TS/С/С++/Java  · 20 янв 2022
Минимальный список основываясь на своем личном опыте: Обязательно знать/ понимать синтаксис языка Уметь работать с циклами Уметь работать с различными типами данных (массивы, структуры и тд) Знать как работают функции и классы... Читать далее
Программист java, javascript. Люблю программироват...  · 22 февр 2022
Фреймворк призван упростить определённые задачи программисту. React упрощает генерацию пользовательского интерфейса. Что бы приступить к его изучению сначала напишите простую программу на чистом javascript. Например... Читать далее
Senior frontend developer  · 16 янв 2022
Нужные крепкие базовые знания языка
сперва учите язык, а потом уже фреймворк
без знания языка вы можете неправильно понять или не понять совсем некоторые вещи во фреймворке
По образованию физик, работаю программистом  · 12 янв 2022
В Джаваскрипте знать нечего. Изучайте сразу фреймворк и добивайтесь, чтобы Вы понимали код, который приводится в примерах. По джаваскрипту есть бесплатная документация в интернете, вылезает в Гугле первым пунктом на комбинцию... Читать далее