Урок 23. Минимальная оценка JavaScript


Все уроки по JavaScript расположены здесь.

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

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

let defaultName;
if (username) {
  defaultName = username;
} else {
  defaultName = 'Stranger';
}
Если вы объедините свои знания логических операторов, то можете тот же код записать в сокращенном виде. В булевом условии JavaScript присваивает переменной значение truthy, если в назначении используется оператор || :

let defaultName = username || 'Stranger';
Здесь происходит тоже самое, что и в первом куске кода. Мы проверяем, если переменная username отличается от null (то есть не гость, а зарегистрированный пользователь), то значение defaultName становится username, а иначе – Stranger (Незнакомец).

Эта концепция также называется оценкой короткого замыкания или минимальной оценкой.

Упражнения к уроку

  1. Давайте использовать оценку короткого замыкания для присвоения значения writingUtensil. Дай код:
    let tool = '';
    
    console.log(`The ${writingUtensil} is mightier than the sword.`);
    
    Присвойте writingUtensil значение tool, и если tool является false, присвойте значение по умолчанию 'pen'.
  2. Обратите внимание на то, что текст «The pen is mightier than the sword» выводится на консоль. Это означает, что значение writeUtensil является «pen». Что делать, если мы переназначим значение tool «marker». Давайте посмотрим, что произойдет со значением writeUtensil.
Предыдущий: Урок 22. Значения true и false для не булевых переменных JavaScript
Автор этого материала - я - Пахолков Юрий. Я оказываю услуги по написанию программ на языках Java, C++, C# (а также консультирую по ним) и созданию сайтов. Работаю с сайтами на CMS OpenCart, WordPress, ModX и самописными. Кроме этого, работаю напрямую с JavaScript, PHP, CSS, HTML - то есть могу доработать ваш сайт или помочь с веб-программированием. Пишите сюда.

тегистатьи IT, уроки по JavaScript, JavaScript




Отправляя сообщение я подтверждаю, что ознакомлен и согласен с политикой конфиденциальности данного сайта.




Как заблокировать вебвизор
Усиление стрессера
Постепенное появление размытого изображения CSS