JavaScript заметки
8.56K subscribers
2.75K photos
4 videos
1.27K links
Регулярные заметки по практическому JavaScript. Обучащию посты позволят прокачать навыки во Frontend-разработке.

Можно почитать пока компилируется проект :)

Сотрудничество: @noname_media

Канал на бирже: telega.in/channels/notesjs/card?r=Wj7h1mbl
Download Telegram
.map()

Метод map() позволяет трансформировать один массив в другой при помощи функций-колбэка. Переданная функция будет вызвана для каждого элемента массива по порядку. Из результатов вызова функции будет собран новый массив.

#const #map #массив

Подробнее
👍9
.reduce()

Метод массива reduce() позволяет превратить массив в любое другое значение с помощью переданной функции-колбэка и начального значения. Функция-колбэк будет вызвана для каждого элемента массива, и всегда должна возвращать результат.

#массив #reduce

Подробнее
👍5
.filter()

Метод массива .filter() позволяет получить новый массив, отфильтровав элементы с помощью переданной колбэк-функции. Колбэк-функция будет вызвана для каждого элемента массива и по результату функции примет решение, включать этот элемент в новый массив или нет.

#массив #filter

Подробнее
👍1
.find()

Метод массива find() вернёт первый найденный в массиве элемент, который подходит под условие в переданной колбэк-функции. Если в массиве не найдётся ни одного подходящего элемента, то вернётся значение undefined.

#массив #find

Подробнее
👍7
.findIndex()

Метод findIndex() возвращает индекс первого найденного в массиве элемента, который подходит под условие переданной функции. Если же ни одного подходящего элемента не найдётся, то метод вернёт -1.

Если вам нужно получить элемент, а не его индекс, то используйте метод find(). А если необходимо проверить наличие чего-либо в массиве, то сначала обратите внимание на метод includes().

#массив #findIndex

Подробнее
👍62🔥1
.findIndex()

Метод findIndex() возвращает индекс первого найденного в массиве элемента, который подходит под условие переданной функции. Если же ни одного подходящего элемента не найдётся, то метод вернёт -1.

Если вам нужно получить элемент, а не его индекс, то используйте метод find(). А если необходимо проверить наличие чего-либо в массиве, то сначала обратите внимание на метод includes().

#массив #findIndex

Подробнее
🔥3👍21
.flat()

Метод flat() возвращает новый массив и уменьшает вложенность массива на заданное количество уровней.

Метод принимает необязательный аргумент depthколичество уровней, на которые нужно уменьшить вложенность. Значение по умолчанию — 1.

Результатом вызова метода flat() будет новый массив меньшей вложенности.

Подробнее
👍4🔥1
.flatMap()

Метод flatMap() позволяет сформировать массив, применяя функцию к каждому элементу, затем уменьшает вложенность, делая этот массив плоским, и возвращает его.

Был добавлен в стандарте ES2019. Если вы поддерживаете браузеры, выпущенные раньше 2018 года, то вам понадобится полифил.

#flatMap #массивы

Подробнее
👍8
.every()

Метод массива .every() позволяет узнать, удовлетворяют ли все элементы в массиве условию в функции-колбэке. Результатом вызова метода .every() будет boolean-значение true или false. Если хотя бы один элемент не будет удовлетворять условию, то результат будет false.

#массив #every

Подробнее
👍7
.some()

Метод массива some() позволяет узнать, есть ли в массиве хотя бы один элемент, удовлетворяющий условию в функции-колбэке. Колбэк-функция будет вызываться для каждого элемента массива до тех пор, пока не вернётся true, либо пока не закончатся элементы массива.

Результатом вызова метода some() будет boolean-значение true или false. Если ни один элемент в массиве не удовлетворит условию, то результат будет false.

#массив #some

Подробнее
👍8🔥21
.reverse()

Метод reverse() обращает порядок элементов в массиве в обратном направлении, то есть делает первый элемент последним, а последнийпервым.

Метод изменяет массив, по отношению к которому вызван, и возвращает ссылку на изменённый массив.

#reverse #массив

Подробнее
👍61🔥1
.includes()

Этот метод определён у массивов и строк.

Для массивов: проверяет, есть ли искомый элемент в массиве.

Для строк: проверяет, есть ли искомая подстрока в строке.

Возвращает true, если искомый элемент нашёлся и false — если нет.

#массивы #includes

Подробнее
👍82🔥1
.indexOf()

Этот метод служит для поиска. Он определён для массивов и строк.

При вызове нужно передать, что искать. Вернётся индекс первого найденного элемента или -1, если ничего не нашлось.

#массивы #indexOf

Подробнее
👍42🔥1
.length

Свойство length возвращает количество элементов в массиве. Если элементов нет, то свойство возвращает 0.

#массивы #length

Подробнее
🔥4👍32
Array.from()

Функция Array.from() создаёт новый массив на основе переданного объекта. Объект должен быть либо массивоподобным (как строка или объект arguments), либо итерируемым (как Set или Map).

#массивы #Arrayfrom

Подробнее
3🔥3👍2
Синхронизация между атрибутами и свойствами

Когда стандартный атрибут изменяется, соответствующее свойство автоматически обновляется. Это работает и в обратную сторону (за некоторыми исключениями).

В примере выше id модифицируется как атрибут, и можно увидеть, что свойство также изменено. То же самое работает и в обратную сторону.

#браузер #документ #атрибуты_свойств
👍41🔥1
Дескрипторы

Объекты
, как мы знаем, содержат свойства. У каждого из свойств объекта, кроме значения, есть ещё три флага конфигурации, которые могут принимать значения true или false. Эти флаги называются дескрипторами:

writable — доступно ли свойство для записи;
enumerable — является ли свойство видимым при перечислениях (например, в цикле for..in);
configurable — доступно ли свойство для переконфигурирования.

Когда мы создаём свойство объекта «обычным способом», эти три флага устанавливаются в значение true.

Для изменения значений дескрипторов применяется статический метод Object.defineProperty(), а для чтения значенийObject.getOwnPropertyDescriptors().

Другими словами, дескрипторы — это пары ключ-значение, которые описывают поведение свойства объекта при выполнении операций над ним (например, чтения или записи).

#объекты #Дескрипторы

Подробнее
👍91
Array.isArray()

Статический
метод Array.isArray() проверяет, является ли переданный аргумент массивом. Возвращает true, если является, и false — если нет.

#массивы #ArrayisArray

Подробнее
👍63🔥1
Объект

Кроме примитивных типов в JavaScript существуют и сложные — например, объект.

Объект (object) — это набор свойств. Каждое свойство состоит из названия и значения. Название может быть строкой или символом, а значение может быть любым.

Объекты в JavaScript используются повсюду, особенно для хранения данных. Для уверенной работы с объектами необходимо знать, как создавать объект, как его изменять и как читать значения свойств.

#объекты #Объект

Подробнее
👍41🔥1
.toString()

Метод toString() преобразует объект в строковое представление. Метод автоматически вызывается JavaScript, когда объект нужно представить в текстовом виде.

Если метод не переопределён, то он возвращает строку формата [object тип], где тип — это строка, которая уточняет тип объекта. В подавляющем большинстве вы будете видеть вывод [object Object].

#объекты #toString

Подробнее
🔥5👍31