js の面接の質問があります。質問は次のとおりです。次のコードの実行結果は何ですか、またその理由は何ですか?
答えは 10 です。この質問は主に JavaScript のカンマ演算子を調べます。
以下は MDN によるカンマ演算子の定義です:
カンマ演算子は 2 つのオペランドを (左から右に) 評価し、2 番目のオペランドの値を返します。
この定義によれば、次のように展開できます。
カンマ演算子は、2 つ以上のオペランドを左から右に評価し、最後のオペランドの値を返します。
以下のコードを感じてください:
if (0,9)alert("ok");
if (9,0)alert("ok");
実際のコードではカンマ演算子はどのような役割を果たしますか?
1. 変数を交換します。3 番目の変数は必要ありません
//方法 1
a = [b][b = a, 0];
//方法 2
a = [b, b = a][0];
2. 簡略化されたコード
は、
と省略できます。