Изучите эти элегантные приемы и сокращения для написания профессионального кода JavaScript.

Я собрал список полезных приемов JavaScript, которые помогут сделать ваш код более элегантным и профессиональным. Я надеюсь, вам понравится это!

1. Однострочный вариант "если-еще"

В JavaScript вы можете использовать тернарный условный оператор для сжатия ваших операторов if-else.

Например:

Помните, что это сокращение предназначено для того, чтобы код был чище. Используйте его только тогда, когда он явно делает выражение более понятным.

2. Нулевое слияние

Оператор объединения с нулевым значением ?? возвращает правую часть, если левая часть равна нулю. В противном случае он возвращает значение слева. Это полезно, потому что позволяет опустить длительные проверки if.

Синтаксис объединения NULL:

someValue ?? defaultValue

Например:

Выход:

Nothing found
Nothing found

3. Дополнительная цепочка

В JavaScript вы можете получить доступ к свойствам и методам объекта с помощью точечной записи.

Например:

fruit.color

Но если вы попытаетесь получить доступ к свойству неопределенного объекта, вы увидите ошибку. Чтобы этого избежать, вам необходимо убедиться, что объект определен, прежде чем обращаться к его свойствам:

const color = fruit && fruit.color;

Но это не выглядит мило. Вместо этого вы можете использовать необязательную цепочку, добавив вопросительный знак перед точечной нотацией, например:

const color = fruit?.color;

Давайте посмотрим на пример с реальным JS-объектом:

Выход:

undefined
undefined

4. Преобразование любого значения в логическое.

В JavaScript вы можете привести что угодно к логическому значению. Причина в том, что под капотом все в JavaScript либо Правдиво, либо Ложно.

Чтобы преобразовать что-либо в логическое значение, используйте двойной восклицательный знак !!.

Например:

5. Распространение

Вы можете распределить элементы одного массива в другой массив, используя оператор распространения ....

Например, давайте объединим два массива чисел вместе с помощью оператора распространения:

Вы также можете заменить метод .push() оператором распространения при добавлении элементов в массив.

Например:

6. Деструктуризация с помощью оператора спреда

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

Для демонстрации создадим объект student. Давайте назначим свойства name и age переменным, а оставшиеся свойства - третьей переменной:

7. Удаление дубликатов из массива

Вы можете удалить дубликаты массива, преобразовав массив в набор, а затем добавив значения из набора обратно в массив.

Это работает, потому что набор - это уникальная коллекция элементов.

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

Например:

const nums = [1,1,1,1,3,4,5]
const uniqueNums = [...new Set(nums)];

А вот альтернативный способ сделать то же самое:

const nums = [1,1,1,1,3,4,5]
const uniqueNums = Array.from(new Set(nums))

Кстати, если вам нужен массив уникальных элементов, почему вы все равно не используете набор?

8. Оператор && в оценке короткого замыкания

Вы используете if-check, чтобы узнать, истинно ли выражение?

Вы можете сделать то же самое с сокращением, используя оператор короткого замыкания &&.

Например:

Выход:

Yeah
Yeah

9. Вставьте значения в строку

Вы можете встроить переменную в строку, заключив строку в обратные кавычки и используя ${}.

Например:

Эти струны иногда называют «струнами на стероидах».

10. Назначение свойств объекта

Если вы хотите, чтобы ключи вашего объекта имели то же имя, что и значения, вы можете опустить литералы объекта.

Например:

11. Значения по умолчанию

В JavaScript у вас может быть функция со значением аргумента по умолчанию.

Таким образом, вы можете вызывать функцию как с указанием значения аргумента, так и без него.

Давайте посмотрим на пример:

12. Объявление переменных одной строкой

Вы можете объединить объявления переменных в одну строку вместо использования одной строки для каждого объявления.

Например:

13. Значения объекта как массив

Используйте метод Object.values(), чтобы собрать все значения объекта в массив.

Например:

14. Найти элемент в массиве

Используйте встроенный метод find(), чтобы найти элемент, соответствующий определенному критерию.

Например:

15. Находится ли элемент в массиве?

Вместо использования метода indexOf() для проверки наличия элемента в массиве вы можете использовать метод includes().

Например:

16. Проверка нескольких условий

Избегайте цепочек условий, используя метод includes().

Например:

17. Назначьте несколько значений одной строкой кода

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

Например:

Это относится и к объектам:

18. Поменять местами две переменные без третьей

Используйте деструктуризацию, чтобы отделить значения от массива. Это можно применить для замены двух переменных без третьей.

Например:

19. Math.pow () Сокращение.

Вместо использования функции Math.pow() для возведения числа в степень вы можете использовать оператор ** как сокращение:

20. Math.floor () Сокращение

Вместо использования функции Math.floor() для округления числа в меньшую сторону вы можете использовать оператор ~~ как сокращение:

Заключение

Спасибо за прочтение. Надеюсь, вам понравилось.

Удачного кодирования!

Читайте также







Больше контента на plainenglish.io