请问如何让(a == 1 && a==2 && a ==3)为 true?
前置知识
逻辑运算符:|| 和 &&
- 逻辑或
||||前面为false,就返回||后面的值||前面为true,就返回||前面的值
- 逻辑与
&&&&前面是false,就返回&&前面的值&&前面是true,就返返回&&后面的值
巧用运算符:
||设置默认值 let name = person.name || '掘金'&&判断依赖键是否存在防止报错xxx of undefined
- let name = person.name && person.name.firstName
解决方案
- 数据劫持:Object.defineProperty(Vue2.x双向数据绑定原理)
let value = 0 Object.defineProperty(window,'a',{ get(){ return value += 1; } }) a === 1 && a === 2 && a === 3 // true - 修改属性
let i= 0 let a = { // 三个修改一个就可以 valueOf() { return ++i; }, toString() { return ++i; }, [Symbol.toPrimitive]() { return ++i; } } a === 1 && a === 2 && a === 3 // true