3 && 4вернёт 4, тогда как
3 == trueвозвращает false???
3 && 4вернёт 4, тогда как
3 == trueвозвращает false???
Цитата |
Логические операторы, как правило, используются с булевыми значениями и возвращают булево значение. Однако, в javascript операторы && и || возвращают не булево значение, а один из операндов, определивший значение выражения. Конечно, результат в таком случае может быть и не нулевым. |
Цитата |
expr1 && expr2 - Возвращает expr1, если оно может быть преобразовано к false; в ином случае возвращает expr2. Так что, при вызове с булевыми значениями, && вернет true только если оба операнда истинны, иначе false. |
Boolean("4");
true
"4" == true
false
<?php
if ("4" == true)
{
echo 'true';
}
else
{
echo 'false';
}
Boolean("4") == true
true
Цитата |
Оператор == :Если два операнда не одного типа, javascript преобразовывает типы и сравнивает строго. Если какой-либо операнд - число или булево значение, то операнды преобразуются в числа; если какой-либо операнд строка - второй преобразуются в строку |
Цитата |
Boolean("4"); true |
function a() { }
console.log(Boolean(a()));
Цитата (J1upuk @ 24.09.2015 - 13:04) |
3 == true |
Цитата |
Если два операнда не одного типа, javascript преобразовывает типы и сравнивает строго. Если какой-либо операнд - число или булево значение, то операнды преобразуются в числа; если какой-либо операнд строка - второй преобразуются в строку |
Цитата (webguru111 @ 20.08.2017 - 12:35) |
вот нашел отличный материал |
Цитата (webguru111 @ 20.08.2017 - 12:35) |
Веду блог |