Всем привет, написал лонгрид в стиле "JavaScript для маленьких", в котором описал основные принципы и работы функций, массивов, переменных, объектов, классов.
Не думаю, что есть смысл много расписывать о том, что такое JavaScript и для чего он нужен, лучше кратко пробежимся по основным темам, которые я затронул в статье, а если вас заинтересует, вы сможете перейти по ссылке и прочитать подробнее!
Буду рад любым комментариям как здесь, так и на самом сайте! Что ж, давайте начинать!
Переменные const, let и var
Начнем с переменных, в чем же их отличия? var - это и глобальная и локальная переменная одновременно. Если var объявлена вне функции (например, в цикле) она будет поднята до верхнего уровня, чего не могут let и const. Однако такое поднятие не есть хорошо, потому что множество одинаково названных переменных буду перезаписывать друг-друга.
Константу (const) - нельзя перезаписывать, потому что это константа. Вместо этого используйте let.
Объекты и массивы JS
JavaScript в целом построен на объектах и массивах. Для того чтобы создать объект, достаточно написать
const = {} // Создание объекта
const = [] // Создание массива
Объекты можно перебирать, добавлять и удалять как целиком, так и точечно. Тоже самое с массивами, но массивы предоставляют куда больше функционала, по крайне мере потому что они имеют индекс элемента, а объекты нет.
Классовый подход
Многие называют классы "синтаксическим сахаром" для объектов JS. Это не совсем так, но правда в этих словах есть. Классы помогают нам более императивно подходить к созданию объектов, где порядок передачи элементов не столь важен.
Пример класса:
class User {
constructor(options) {
this.user = options.user;
}
}
let user = new User({user: 'Denis'})
console.log(user) // {user: Denis}
Мы можем наследовать классы, что если мы хотим создать админа?
class Admin extends User {
constructor(options) {
super(options);
this.admin = options.admin
}
}
let admin = new Admin({user: 'Admin', admin: true})
console.log(admin)
Мы унаследовали поле user из класса User и добавили новое поле admin.
Функции JavaScript
Для чего нужны функции? Чтобы не дублировать код. Дублирование кода - считается очень плохой практикой. Мы можем написать функцию, которая будет выполнять каждый раз, когда ее об этом попросим.
Например, если мы хотим приветствовать разных пользователей, нет нужды каждый раз писать alert('Привет', userName); Мы можем создать функцию, которая будет получать параметром userName;
function sayHello (userName) {
alert('hello ' + userName)
}
sayHello('Denis') // Hello Denis
sayHello('Andrey') // Hello Andrey
Друзья, чтобы узнать обо всем подробнее, как это все работает, я написал очень большой материал на тему: Что такое JavaScript? В нем я расписал все намного подробнее чем здесь. Я потратил на это несколько дней. Буду рад за любой отзыв или дополнение к материалу. Всем спасибо!