js中|和||的区别
时间: 2023-10-19 07:07:42 浏览: 202
JavaScript中in和hasOwnProperty区别详解
5星 · 资源好评率100%
在JavaScript中,`|`和`||`是两个不同的操作符,具有不同的用途和行为。
`|`是按位或(Bitwise OR)操作符,用于对两个操作数执行按位或运算。它将两个操作数的每个对应位进行比较,如果至少有一个位是1,则结果位为1,否则为0。它适用于整数类型的操作数。例如:
```javascript
let a = 5; // 二进制表示为 0101
let b = 3; // 二进制表示为 0011
let result = a | b; // 二进制表示为 0111,即十进制的7
console.log(result); // 输出 7
```
`||`是逻辑或(Logical OR)操作符,用于在条件语句中进行逻辑判断。它接受两个操作数,并返回第一个非假(truthy)值。如果第一个操作数是真(truthy),则返回第一个操作数的值;否则,返回第二个操作数的值。逻辑或操作符通常用于条件判断、赋值默认值等场景。例如:
```javascript
let a = 0;
let b = 2;
let result = a || b;
console.log(result); // 输出 2
```
在这个例子中,`a`的值为0,被视为假(falsy),所以逻辑或操作符返回了第二个操作数的值2。
总结起来,`|`是按位或操作符,用于整数类型的位运算;`||`是逻辑或操作符,用于逻辑判断和条件赋值。
阅读全文