慕哥6287543
2021-04-28 13:26:57
我有使用javascript的這段代碼:var arr = [ 'one', 'two', 'three', 'four', 'five'];for (var property1 in arr) { console.log(property1);}當(dāng)我執(zhí)行此代碼時,我得到:'1''2''3''4' 但是我想要這個:'one','two','three','four','five'如何使用for進行此操作?
2 回答

慕萊塢森
TA貢獻1810條經(jīng)驗 獲得超4個贊
如果要遍歷數(shù)組,則需要使用for..in。您可以使用for..of或for循環(huán),但最好了解為什么會發(fā)生這種情況。
for..in遍歷對象的鍵/值對。括號中的變量被設(shè)置key為該鍵/值對的。對于數(shù)組,它將被設(shè)置為數(shù)組的索引或任何可枚舉的屬性。這就是為什么它打印數(shù)字而不是單詞的原因。
我還想指出一些迭代方法,這些方法可能在命令式循環(huán)之外有用。
arr.forEach將允許您遍歷數(shù)組而無需額外的for語法。
arr.forEach(item => console.log(item))
當(dāng)您開始遍歷列表時,諸如arr.map和的其他方法arr.filter將為您提供更多功能。
const numbers = [1,22,11,18,16];
const add = a => b => a + b;
const isEven = number => number %2 === 0;
const biggerEvenNumbers = numbers
? .map(add(1))
? .filter(isEven) // [2,12]
添加回答
舉報
0/150
提交
取消