Baseline Widely available
对äºä¸ç»æä½æ°çé»è¾æï¼||
ï¼é»è¾æåï¼è¿ç®ç¬¦ï¼å½ä¸ä»
å½å
¶ä¸ä¸ªæå¤ä¸ªæä½æ°ä¸ºçï¼å
¶è¿ç®ç»æä¸ºçãå®é常ä¸å¸å°ï¼é»è¾ï¼å¼ä¸èµ·ä½¿ç¨ãå½å®æ¯å¸å°å¼æ¶ï¼è¿åä¸ä¸ªå¸å°å¼ãç¶èï¼||
è¿ç®ç¬¦å®é
䏿¯è¿åä¸ä¸ªæå®çæä½æ°çå¼ï¼æä»¥å¦æè¿ä¸ªè¿ç®ç¬¦è¢«ç¨äºéå¸å°å¼ï¼å®å°è¿åä¸ä¸ªéå¸å°å¼ã
const a = 3;
const b = -2;
console.log(a > 0 || b > 0);
// Expected output: true
è¯æ³ æè¿°
妿 expr1
è½è½¬å为 true
ï¼è¿å expr1
ï¼å¦åè¿å expr2
ã
è½å¤è½¬å为 true
çå¼å«åçå¼ï¼è½å¤è½¬å为 false
çå¼å«ååå¼ã
è½å¤è½¬å为 false ç表达å¼ç示ä¾å¦ä¸ï¼
null
ï¼NaN
ï¼0
ï¼""
æ ''
æ ``
ï¼ï¼undefined
ã尽管 ||
è¿ç®ç¬¦å¯ä»¥ä¸éå¸å°æä½æ°ä¸èµ·ä½¿ç¨ï¼ä½å®ä»ç¶è¢«è®¤ä¸ºæ¯ä¸ä¸ªå¸å°è¿ç®ç¬¦ï¼å 为å®çè¿å弿»æ¯å¯ä»¥è¢«è½¬æ¢ä¸ºå¸å°åºæ¬ç±»åãè¦æç¡®å°å°å
¶è¿åå¼ï¼æä»»ä½ä¸è¬ç表达å¼ï¼è½¬æ¢ä¸ºç¸åºçå¸å°å¼ï¼è¯·ä½¿ç¨åéè¿ç®ç¬¦æ Boolean
æé 彿°ã
é»è¾æä»å·¦å°å³è¿è¡æ±å¼ï¼å®ä½¿ç¨å¦ä¸è§åè¿è¡âçè·¯âæµè¯ï¼
(some truthy expression) || expr
被çè·¯è¯ä¼°ä¸ºçå¼ã
çè·¯æå³çä¸é¢ç expr
é¨åä¸è¢«æ±å¼ï¼å æ¤ä¸ä¼åçä»»ä½å¯ä½ç¨ï¼ä¾å¦ï¼å¦æ expr
æ¯ä¸ä¸ªå½æ°è°ç¨ï¼è°ç¨å°±ä¸ä¼åçï¼ãè¿æ¯å 为å¨å¯¹ç¬¬ä¸ä¸ªæä½æ°è¿è¡è¯ä¼°åï¼æä½æ°çå¼å·²ç»ç¡®å®ãåè§ä¸è¿°ç¤ºä¾ï¼
function A() {
console.log("è°ç¨äº A");
return false;
}
function B() {
console.log("è°ç¨äº B");
return true;
}
console.log(B() || A());
// ç±äºè°ç¨äº B 彿°ï¼æ
ä¼è¾åº "called B" å°æ§å¶å°ï¼
// ç¶åè¾åº trueï¼è¿ç®ç¬¦çè¿ç®ç»æï¼
è¿ç®ç¬¦ä¼å
级
以ä¸è¡¨è¾¾å¼çèµ·æ¥çä»·ï¼ä½å®é
ä¸ä¸æ¯ï¼å 为 &&
è¿ç®ç¬¦æ¯ ||
è¿ç®ç¬¦å
æ§è¡ï¼åè§è¿ç®ç¬¦ä¼å
级ï¼ã
true || false && false; // è¿å trueï¼å 为 && å
æ§è¡
(true || false) && false; // è¿å falseï¼å 为åç»è¿ç®ç¬¦ä¼å
级æ´é«
ç¤ºä¾ ä½¿ç¨æè¿ç®ç¬¦
ä¸å代ç å±ç¤ºäº ||
ï¼é»è¾æï¼è¿ç®ç¬¦çç¨æ³ã
true || true; // t || t returns true
false || true; // f || t returns true
true || false; // t || f returns true
false || 3 === 4; // f || f returns false
"Cat" || "Dog"; // t || t returns "Cat"
false || "Cat"; // f || t returns "Cat"
"Cat" || false; // t || f returns "Cat"
"" || false; // f || f returns false
false || ""; // f || f returns ""
false || varObject; // f || object returns varObject
夿³¨ï¼ å¦æä½ ä½¿ç¨è¿ä¸ªæä½ç¬¦ä¸ºæäºåéæä¾é»è®¤å¼ï¼è¦æ³¨æä»»ä½åå¼é½ä¸ä¼è¢«ä½¿ç¨ãå¦æä½ åªéè¦è¿æ»¤æ null
æ undefined
ï¼å¯ä»¥èè使ç¨ç©ºå¼åå¹¶è¿ç®ç¬¦ã
ä¸è¿°æ¶åå°å¸å°è¿ç®ç¬¦çè¿ç®ï¼
bCondition1 && bCondition2
æ»æ¯ä¸æ¤è¡¨è¾¾å¼ç¸åï¼
!(!bCondition1 || !bCondition2)
æè¿ç®ç¬¦è½¬å为ä¸è¿ç®ç¬¦
ä¸è¿°æ¶åå°å¸å°è¿ç®ç¬¦çè¿ç®ï¼
bCondition1 || bCondition2
æ»æ¯ä¸æ¤è¡¨è¾¾å¼ç¸åï¼
!(!bCondition1 && !bCondition2)
å»é¤åµå¥çæ¬å·
ç±äºé»è¾è¡¨è¾¾å¼æ¯ä»å·¦å°å³è¿è¡æ±å¼çï¼åªè¦éµå¾ªä¸å®çè§åï¼æ»æ¯å¯ä»¥ä»ä¸ä¸ªå¤æç表达å¼ä¸å 餿¬å·ã
ä¸è¿°æ¶åå°å¸å°è¿ç®ç¬¦ç夿è¿ç®ï¼
bCondition1 && (bCondition2 || bCondition3)
æ»æ¯ä¸æ¤è¡¨è¾¾å¼ç¸åï¼
!(!bCondition1 || !bCondition2 && !bCondition3)
è§è æµè§å¨å
¼å®¹æ§ åè§
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4