Привет, Dev 😉, в этом посте я покажу вам, как сократить длину ваших условных утверждений, используя силу правды JavaScript и фальсификации. Давайте сломаем это.
Прежде чем обсудить правдивые и фальшивые ценности, давайте немного рассмотрим, как JavaScript обрабатывает условные утверждения.
В JavaScript условие, передаваемое любому условному утверждению, является первым принудительно (трансформировано) в это Логический контекст
Он основан на результате этого принуждения/преобразования, что JavaScript знает, должен ли он выполнить тело оператора или пропустить его.
Взять, к примеру.
if(1+1 == 2){
console.log('passed');
}else{
console.log('failed');
Когда JavaScript сталкивается с этим условным утверждением выше, он сначала оценивает 1+1 и результат этой оценки может быть только истинный или ложный Потому что 1+1 (что приведет к 2 ) может быть равен только 2 ( true ), или нет ( false ).
Результатом этой оценки является то, что определяет, выполнит ли JavaScript console.log ('прошел') или console.log ('неудачный') Анкет
И в нашем случае он в конечном итоге будет регистрировать «передачу» к консоли, потому что результат этой оценки будет истинный (1+1 – 2).
Вот как работают JavaScript и в значительной степени другие языки. Просто знай, что что угодно Передается в блок состояния заявления будет принужден к истинному или неверно, оценивая его. И вот и интересная часть, я сказал что -нибудь, и я имею в виду что -нибудь. Любое действительное выражение.
Вы можете пройти в функциональных вызовах, и возвращаемое значение этой функции будет принуждено.
if(getName()){
// do something
}
Вы можете пройти со ссылкой на переменные, и упомянутое значение будет принуждено.
if(localStorage.todos){
// do something
}
Теперь вам может быть интересно, как будут принуждать типы данных, такие как строки, массивы, объекты. Теперь давайте посмотрим, как JavaScript решает, что является правдой или ложным.
Правдивые и фальшивые ценности
A Правда Значение – это значение, которое считается Верно При встрече в логическом контексте.
A фальсификация Значение – это значение, которое считается ложный При встрече в логическом контексте.
1. Фальшивые ценности
ложный , 0 В -0 , 0n , "" , NULL , неопределенное , и НАН )
2. Правдивые ценности
Все, что не перечислено выше, считается правдой. например [] , {a: 1} , 1 , так далее.
Прелесть этого в том, что JavaScript оценит ваше выражение, прежде чем определить, правда или фальсификация. Итак, вы можете сделать что -то вроде
if([]){...}
if(null){...}
if({a:1}){...}
Так что это дает вам мощную стенографию для проверки условий. if (3> 2) можно сократить до if (3> 2) Анкет
Вот быстрый поток того, как будет выполнено выполнение для if (3> 2)
Из:
if(3 > 2 == true)
К:
if(true == true)
К:
if(true)
Резюме
Наличие этого знания дает вам возможность писать условные условия, как профессионалы, оно снижает ваши строки кодов и быстрее выполняет выполнение.
Я надеюсь, что вы что -то узнали, я хотел бы узнать ваши мысли по этому поводу. Счастливого кодирования 💻.
Оригинал: “https://dev.to/stanleyugwu/write-javascript-conditionals-like-a-pro-with-truthy-and-falsy-values-4hgj”