The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Релиз языка программирования PHP 8.0"
Версия для распечатки Пред. тема | След. тема
Форум Разговоры, обсуждение новостей
Исходное сообщение [ Отслеживать ]
Присылайте удачные настройки в раздел примеров файлов конфигурации на WIKI.opennet.ru.
. "Релиз языка программирования PHP 8.0" –1 +/
Сообщение от Lex (??), 27-Ноя-20, 07:21 
>> Одно - булевы операции, другое - логические
> И "одно" и "другое" - одно и тоже.

ЖС-кудах, ты ли это ?)

5 | 2 = 0b00000101 | 0b00000010 = 0b00000111 = 7

5 || 2 = 5 != false || 2 != false = true || true = true
Хотя, каюсь, в последнее время для общего случая второй вариант работает иначе - как условная подстановка, т.е:
5 || 2 = Boolean( 5 ) ? 5 : 2 = 5
0 || 2 = Boolean( 0 ) ? 0 : 2 = 2
Его, в общем случае, используют для инициализации значения по умолчанию, если дальнейшая работа с неопределенными значениями доставляет кучу проблем:
const someData = possiblyNullOrUndefnedValue || "Ну не передано значия, ***тЪ!";
В итоге, в someData будет либо значение из первой переменной, либо - из второй( если в неопределенное значение ).

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

Ответить | Правка | Наверх | Cообщить модератору

Оглавление
Релиз языка программирования PHP 8.0, opennews, 26-Ноя-20, 18:15  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру