0

代入をコンマと組み合わせる場合 (おそらくすべきではないこと)、javascript はどの値が代入されるかをどのように判断しますか? 次の 2 つのスニペットを検討してください。

function nl(x) { document.write(x + "<br>"); }
var i = 0;
nl(i+=1, i+=1, i+=1, i+=1);
nl(i);

と:

function nl(x) { document.write(x + "<br>"); }
var i = 0;
nl((i+=1, i+=1, i+=1, i+=1));
nl(i);

最初のアウトプット

1
4

2番目の出力

4
4

ここで括弧は何をしていますか?

4

1 に答える 1

3

ここで、2 つのことを混同していました。'nl' への最初の呼び出しは、4 つの引数を持つ関数呼び出しです。2 つ目は、コンマを 1 つの引数に評価することです。

したがって、答え: 「,」で区切られた式のリストの値は、最後の式の値です。

于 2009-02-02T03:53:00.750 に答える