Update translation, update code format (#21966)

This commit is contained in:
范鼎
2018-12-29 07:53:10 +08:00
committed by Jingyi Ding
parent eb5ebf6f53
commit 442a89c1a2

View File

@ -4,51 +4,51 @@ localeTitle: 布尔
--- ---
## 布尔 ## 布尔
布尔值是计算机编程语言中常用的原始数据类型。根据定义,布尔值有两个可能的值: `true``false` 布尔值是计算机编程语言中常用的原始数据类型。根据定义,一个布尔值有两个可能的值: `true``false`
在Javascript中通常存在对boolean的隐式类型强制。例如如果你有一个if语句来检查某个表达式那么该表达式将被强制转换为布尔值 Javascript 中,通常存在隐式类型强制转换为布尔值的情况。例如,如果你有一个 if 语句来检查某个表达式,那么该表达式将被强制转换为布尔值:
```javascript ```javascript
var a = 'a string'; var a = 'a string';
if (a) { if (a) {
console.log(a); // logs 'a string' console.log(a); // logs 'a string'
} }
``` ```
只有少数值会被强制false 只有少数值会被强制转换为 false
* 假(不是真的被胁迫,因为它已经是假的 * false并不算强制转换因为它本来就是 false
* 空值 * null
* 未定义 * undefined
* NaN * NaN
* 0 * 0
* ''(空字符串) * '' 或 "" (空字符串)
所有其他值将被强制为true。 当一个值被强制转换为布尔值时,我们也称之为'falsy'或'truthy'。 所有其他值将被强制为true。 当一个值被强制转换为布尔值时,我们也称之为'falsy'或'truthy'。
使用类型强制的一种方法是使用or `||` )和and `&&` )运算符: 使用 `||` )和 `&&` )运算符时也会出现类型强制转换
```javascript ```javascript
var a = 'word'; var a = 'word';
var b = false; var b = false;
var c = true; var c = true;
var d = 0 var d = 0
var e = 1 var e = 1
var f = 2 var f = 2
var g = null var g = null
console.log(a || b); // 'word' console.log(a || b); // 'word'
console.log(c || a); // true console.log(c || a); // true
console.log(b || a); // 'word' console.log(b || a); // 'word'
console.log(e || f); // 1 console.log(e || f); // 1
console.log(f || e); // 2 console.log(f || e); // 2
console.log(d || g); // null console.log(d || g); // null
console.log(g || d); // 0 console.log(g || d); // 0
console.log(a && c); // true console.log(a && c); // true
console.log(c && a); // 'word' console.log(c && a); // 'word'
``` ```
如您所见, _or_运算符检查第一个操作数。如果这是真的或真实的,它会立即返回(这就是为什么我们在第一种情况下得到'word'而在第二种情况下得到true。如果它不是真或真它会返回第二个操作数这就是为什么我们在第三种情况下得到'word')。 如您所见, _或_ 运算符检查第一个操作数。如果这是真的或真实的,它会立即返回(这就是为什么我们在第一种情况下得到'word'而在第二种情况下得到true。如果它不是真或真它会返回第二个操作数这就是为什么我们在第三种情况下得到'word')。
使用和运算符它以类似的方式工作,但为了'和'是真的,两个操作数都需要真实。因此,如果两者都是真/真它将始终返回第二个操作数否则它将返回false。这就是为什么在第四种情况下我们得到了真实在最后一种情况下我们得到了'字'。 使用和运算符它以类似的方式工作,但为了'和'是真的,两个操作数都需要真实。因此,如果两者都是真/真它将始终返回第二个操作数否则它将返回false。这就是为什么在第四种情况下我们得到了真实在最后一种情况下我们得到了'字'。
@ -99,4 +99,4 @@ var myFalse = new Boolean(false); // initial value of false
### 资源 ### 资源
* [布尔对象](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Boolean) * [布尔对象](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Boolean)
* [布尔对象](https://docs.oracle.com/javase/7/docs/api/java/lang/Boolean.html) * [布尔对象](https://docs.oracle.com/javase/7/docs/api/java/lang/Boolean.html)