2016-11-01 6 views
0

私は数(n)を与えて配列を作成して配列しなければなりません。配列には、その数値までのすべての数値が含まれますが、ゼロは含まれません。 は、私は次のコード記法と結果

function upTonArr(n) { 
 
    for (var i = 0, monkeys = []; i <= n; monkeys.push(++i)); 
 
    return monkeys; 
 
}

を書きましたが、テストに合格するためには、私< n個のためにそれを変更しなければなりませんでした。

「n」を配列に含める必要がある場合、その表記ではiが必要ではないことを教えてください。< = n?

ありがとうございます。

+0

'i'が' n'より小さいか等しい場合にループが実行されます。等しい部分を削除すると、ループは 'i'が' n'よりも小さいときにのみ実行されます。 – adeneo

+0

'n = 0'を渡したら、いくつのサルが作成されるのか、あなたの心の中のそれぞれの式を評価しようとしますか? – Bergi

+0

同意します。もし私がn = 10と言うなら、私の配列には1から10までのすべての数字が含まれていなければなりません。なぜなら私はn <= 10であると思っているからです。表記がi

答えて

2

接頭辞演算子(++ i)を使用しています。それは、変数をフェッチする前に変数をインクリメントすることです。最初の実行では値は0ですが、接頭辞演算子のために1が配列にプッシュされます。もし私が< = nだったら、配列の最後の値として(n + 1)を押すでしょう。

他のバージョンの後置演算子(i ++)は、最初に変数をフェッチしてからアクセスした後にインクリメントするため、最初の実行時に0がプッシュされます。

+0

ご清聴ありがとうございます。 –

関連する問題