Что делает ||, оператор делает?

Я использовал Pycharm (также из JetBrains, такой же, как IntelliJ IDEA) и видел похожую проблему в pycharm. Основной режим должен использовать настройки вашей системы, верно? Pycharm назвал его «Автоопределение настроек прокси», этот режим у меня не работает, тогда я использую ручной режим, чтобы заполнить настройки прокси. Теперь это хорошо работает.

Надеюсь, это полезно для тебя.

7
задан Jon Seigel 7 April 2010 в 02:12
поделиться

4 ответа

Оператор || в JavaScript возвращает значение слева, если это значение не оценивается как false , в противном случае он возвращает значение на справа.

Из Ссылка на ядро ​​JavaScript 1.5 Mozilla :

expr1 || expr2
Возвращает expr1 , если его можно преобразовать в true; в противном случае возвращает выражение2 . Таким образом, при использовании с логическими значениями || возвращает истину, если любой из операндов истинен; если оба ложны, возвращает ложь.

Таким образом, в этом случае, если Attacklab.wmd_env.buttons не имеет значения, он устанавливает значение на _4 .

19
ответ дан 6 December 2019 в 04:58
поделиться

Это необычный способ написания.

if(!Attacklab.wmd_env.buttons)
    Attacklab.wmd_env.buttons = _4;

Это удобно для предоставления значений по умолчанию. Имейте в виду, что не только null и undefined будут запускать условные выражения, но также 0 , false и '' , то есть все, что считается ложным в логических контекстах.

12
ответ дан 6 December 2019 в 04:58
поделиться

|| Оператор проверяет, является ли значение, указанное в левой части выражения, ложным (в логическом контексте). Если это так, он возвращает альтернативное значение, указанное в правой части выражения. В противном случае он возвращает исходное значение.

Так, например, следующий код установил бы 'Foo' в значение по умолчанию, если оно равно нулю:

Foo = Foo || "Default Value" 

Это иногда называют оператором Объединения. Он поддерживается в других языках, таких как Ruby и Perl. C # имеет ?? оператор, который делает то же самое.

4
ответ дан 6 December 2019 в 04:58
поделиться

Если Attacklab.wmd_env.buttons имеет значение null или undefined , будет установлено значение по умолчанию _4 .

8
ответ дан 6 December 2019 в 04:58
поделиться
Другие вопросы по тегам:

Похожие вопросы: