«Единственный способ творить великие дела – это любить то, что ты делаешь»
JavaScript



Игра «Морской Бой» на JavaScript: Простая Игра и Игра для Двоих



Псевдоистина и псевдоложь в Javascript это значения, по факту не являющиеся true и false, но принимаемые за true и false в условных выражениях.

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



Псевдоложные значения в JavaScript

Сначала нужно определиться, какие значения в Javascript относятся к псевдоложным (остальные - псевдоистинные).

В Javascript сущестует 5 псевдоложных значений:

  • undefined
  • null
  • 0
  • пустая строка
  • NaN

Подробнее об этих значениях читайте здесь.

Рассмотрим в примере ниже: действительно ли указанные значения при составлении условий возвращают ЛОЖЬ, то есть false.

Фрагмент кода

<script type="text/javascript">

/*undefined - неопределенная переменная */
var test_1;
if(test_1 == true){
console.log(true)}
else{
console.log(false)}

/* null - несуществующий объект */
var test_2 = document.getElementById("id");
if(test_2){
console.log(true)}
else{
console.log(false)}

/* ноль */
if(0){
console.log(true)}
else{
console.log(false)}

/* пустая строка */
if(""){
console.log(true)}
else{
console.log(false)}

/* NaN - не число*/
if(NaN){
console.log(true)}
else{
console.log(false)}

</script>

Результат

Псевдоложь в JavaScript

- - - - - - - - - - - консоль браузера - - - - - - - - - - -

false

false

false

false

false

Из примера, что, действительно, неопределенная переменная undefined, несуществующий объект null, ноль 0, пустая строка и «не число» NaN в условиях принимают значение false, то есть являются псевдоложными значениями в Javascript.

Псевдоистинные значения в JavaScript

Теперь рассмотрим несколько примеров того, какие значения в Javascript являются псевдоистинными, то есть возвращают при составлении условий true.

Фрагмент кода

<script type="text/javascript">

var test_0 = {
ex_1: "qwert",
ex_2: 21
}

/* объект */
if(test_0){
console.log(true)}
else{
console.log(false)}

/* массив */
if([]){
console.log(true)}
else{
console.log(false)}

/* число */
if(35){
console.log(true)}
else{
console.log(false)}

/* строка */
if(" "){
console.log(true)}
else{
console.log(false)}

</script>

Результат

Псевдоистина в JavaScript

- - - - - - - - - - консоль браузера - - - - - - - - - -

true

true

true

true

Пример продемонстрировал, что объект, массив (в данном случае пустой), любое число, любая строка (в данном случае пробел) при составлении условий возвращают true, то есть являются псевдоистинными значениями.



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



Отзывы и комментарии:

Добавил(а): Alex
Дата: 2023-10-10

Спасибо за пояснение! Искал, почему пустой массив - псевдоистинное значение :) 09.10.2023

Оставить отзыв:

Ваше Имя:

Текст комментария:

Ответьте на вопрос:

Сколько дней в Високосном году?


Это нужно знать

Тематические публикации
Популярные заметки
Последние заметки