(1)第一个值是false,返回第二个值 javascript
console.log(0 || 'hello') // 'hello' console.log(undefined || 'hello') // 'hello' console.log(0 || NaN) // NaN console.log(NaN || '') // '' console.log('' || null) // null console.log(undefined || 0) // 0
(2)第一个是true,返回第一个值,不执行第二个值java
let obj = {} console.log(obj || number) //{} console.log(0 || number) // 报错,number未定义
(1)第一个是false,返回第一个值,不执行第二个值spa
console.log(0 && number) // 0
(2)第一个是true,返回第二个值code
console.log(1 && number) // 报错,number未定义 console.log(1 && 'hello') // ‘hello’