(== 3 && == 4 && == 5)真のリターン

 

1. Object.defineProperty

 
var val = 1;
Object.defineProperty(window, 'a', { configurable: true, get: function() { console.log(`触发第${val}次get`); return val++ } }) if(a == 1 && a == 2 && a == 3) { console.log('yes!') } 触发第1次get 触发第2次get 触发第3次get yes! 

2.のtoString()のvalueOf()

const b = {
  i: 1,
  toString: function () { return this.i++; } } if(b == 1 && b == 2 && b == 3) { console.log('Hello World!'); // Hello World! } const b = { i: 1, valueOf: function () { return this.i++; } } if(b == 1 && b == 2 && b == 3) { console.log('Hello World!'); // Hello World! } 
暗黙的に比較元の値とオブジェクトの比較の種類は、オブジェクトが元の型の値を変換し、その後比較される場合、のtoString又はvalueOfメソッドを呼び出します。元の型に変換されたオブジェクトの値は、アルゴリズムは、オブジェクトが返された場合、その後、最初の呼valueOfメソッドであり、再度のtoStringメソッドを呼び出し

3. array.join = array.shift

var a = [1,2,3];
a.join = a.shift;
console.log(a == 1 && a == 2 && a == 3);

a == 1 ,此时 a 返回的就是shift返回的第一个元素 1 ,比较完之后  a = [2,3]
a == 2 ,此时 a 返回的就是shift返回的第一个元素 2 ,比较完之后  a = [3]
a == 3 ,此时 a 返回的就是shift返回的第一个元素 3 ,比较完之后  a = []
配列はオブジェクトである、配列toStringメソッド()はアレイ内のtoStringの各要素を、文字列を返す(カンマで区切られた)()メソッドコネクタ部品を接合呼び出すことによって値を返します。

4.Proxy

VaRの A = 新たなプロキシ({I:0 }、{ 
 
得る:(ターゲット名) =>名=== Symbol.toPrimitive()=> ++?target.i:ターゲット[名] 
 
})。
 
console.log( == 1 && == 2 && == 3)。

 

5. Symbol.toPrimitive

// のtoStringのES6等価であるSymbol.toPrimitiveを使用して別の溶液、/のvalueOfは 
=せ{[Symbol.toPrimitive]:(式(I)=>()=> ++ i)から(0 )}。
 
console.log( == 1 && == 2 && == 3)。

 

6.特別な割り当て

するvar = ㅤ A 1。;
 VARの A = 2 ;
 varが =をㅤ 3。;
 IF( ㅤ 1 && A == == == 2 && A ㅤ 3。。){ 
    にconsole.log( "なぜそここんにちは!" 
} 
 
/ / = ㅤ LETのA 1; 
// のlet A = 2; 
// = ㅤ LETのA 3; 
// https://stackoverflow.com/questions/48270127/can-a-1-a-2-a-3- -to-評価・エヴァー#への真
// ここでは三つの異なる変数は、第1および第3の空白文字がない空白の前後にある、ユニコードFFA0は
// なお、奇妙な間隔のif文。これは、=、=、半値幅韓国人です。これは、Unicodeのスペース文字ですが、ECMAScriptのは、単一のスペースとして解釈されない-それは有効な識別子であることを意味します。こうして3つの全く異なる変数、半値幅は、半値幅が韓国語が先行され、韓国の後に添加されるがあります。

7.デジタル変数名

var   a = 1 ;
var ㅤ 1 = a;
var ㅤ 2 = a;
var ㅤ 3 = a; 
console.log(a == ㅤ 1 && a == ㅤ 2 && a == ㅤ 3);

 

あなたが達成するために他の方法を持っている場合は、実装のヨーヨーにご意見を残すことができます!

 

おすすめ

転載: www.cnblogs.com/wangking/p/11202572.html