forループを実行するだけで数値の奇数インデックスを返すことができますが、関数に変換しようとしているときに、何も返さない?配列内の奇数位置にある要素を返す関数を書く方法
function oddArrayIndex(arrayName, emptyIndex) {
for (var i = 1; i < arrayName.length; i += 2) {
emptyIndex.push(arrayName[i]);
}
}
var arr = [ 1, 2, 3, 4, 5, 6, 7];
var oddIndex = [];
oddArrayIndex(arr, oddIndex);
'oddArrayIndex'は' return'文を持っていませんあなたはそれが何を返すと思いますか?すべての値を2番目の引数に追加するので、 'oddArrayIndex'を呼び出した後、' oddIndex'は値を保持します。これは珍しいデザインの決定ですが、それは機能します。新しい機能の場合はhttp://eloquentjavascript.net/03_functions.htmlをご覧ください。 –
forループの後にreturnステートメント –
で新しい配列を手動で返す必要があります。関数内の配列を変更しています。代わりに、関数内に新しい配列を作成し、それを返します。 – Li357