Skip to content
本页目录

trick

a === 1 && a === 2 && a === 3

  • Object.property
js
let tmp = 1;
Object.defineProperty(window, "a", {
  get() {
    return tmp++;
  },
});

console.log(a === 1 && a === 2 && a === 3);
  • valueOf / toString

适用于非全等

js
const a = {
  value: 1,
  valueOf() {
    return this.value++;
  }
}
console.log(a == 1 && a == 2 && a == 3);
js
const a = [1, 2, 3];
a.valueOf = a.shift;
console.log(a == 1 && a == 2 && a == 3);
  • 特殊符号

插入不可见字符

js
const aᅠ = 1;
const a = 2;
const ᅠa = 3;
console.log(aᅠ === 1 && a === 2 && ᅠa === 3);