«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Понимание короткого замыкания в JavaScript: руководство для начинающих

Понимание короткого замыкания в JavaScript: руководство для начинающих

Опубликовано 19 августа 2024 г.
Просматривать:535

Understanding Short-Circuiting in JavaScript: A Beginner

Когда вы впервые начинаете изучать JavaScript, вы быстро понимаете, что написание кода — это нечто большее, чем просто заставить его работать. Одна мощная концепция, которая часто остается незамеченной для новичков, — это «короткое замыкание». Это важная особенность логических операций в JavaScript, которая может сделать ваш код более эффективным и читабельным. Итак, что же такое короткое замыкание и как оно работает?

Что такое короткое замыкание?

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

В JavaScript есть два логических оператора, поддерживающих короткое замыкание: && (И) и || (ИЛИ).

Короткое замыкание с оператором && (AND)

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

Пример:

const isLoggedIn = false;
const hasAccess = isLoggedIn && someFunction();

console.log(hasAccess); // false

В приведенном выше примере функция someFunction() никогда не будет вызываться, поскольку значение isLoggedIn равно false. JavaScript знает, что все выражение ложно, без вычисления второй части.

Короткое замыкание с помощью || (ИЛИ) Оператор

|| оператор проверяет, верна ли хотя бы одна из сторон. Если первый операнд истинен, все выражение истинно, поэтому второй операнд не вычисляется.

Пример:

const userRole = 'admin';
const role = userRole || 'guest';

console.log(role); // 'admin'

Здесь userRole уже правдива («admin»), поэтому JavaScript даже не смотрит на «guest». Значение роли — «admin».

Чем полезно короткое замыкание?

Короткое замыкание — это не просто хитрый трюк; это практический инструмент для написания более чистого и эффективного кода. Вот несколько способов его использования:

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

const name = inputName || 'Guest';

Если inputName пусто или имеет значение NULL, имя по умолчанию будет «Гость».

2. Защита вызовов функций:

user && user.sendMessage('Hello!');

Это гарантирует, что sendMessage будет вызываться только в том случае, если пользователь существует.

3. Ленивая оценка:

const result = complexCondition && performExpensiveOperation();

const result = complexCondition && performExpensiveOperation();

Если complexCondition имеет значение false, дорогостоящая операция пропускается, что позволяет экономить ресурсы.

Подведение итогов

Небольшое замыкание может показаться мелочью, но его понимание может привести к более эффективному и читаемому коду. Это концепция, с которой вы часто будете сталкиваться в JavaScript, поэтому освоившись с ней на раннем этапе, вы станете более сильным разработчиком. Попробуйте поэкспериментировать с ним в своих проектах — скорее всего, он пригодится вам чаще, чем вы думаете!

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

Заявление о выпуске Эта статья воспроизведена по адресу: https://dev.to/victorusese/understanding-short-circuiting-in-javascript-a-beginners-guide-2mk4?1. Если есть какие-либо нарушения, свяжитесь с [email protected], чтобы удалить это
Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3