[英]I want to give each of my array element a number
我有這段代碼,一個問題是它列出了單個數組元素而不是整個數組的數字。
我嘗試了其他方法,包括.map,但失敗了。
讓名字=“ Bilbo,Gandalf,Nazgul,Bob,Grim,Laniakea,Dzevid,Levan,George,What”;
let arr = names.split(', ');
for (let name of arr) {
for(let i =1; i < arr.length; i++)
document.write( i + ` A message to ${name}.` + `<br>` ); // A message to Bilbo (and other names)
}
使用此代碼的結果是:
1 A message to Bilbo. 2 A message to Bilbo. 3 A message to Bilbo. 4 A message to Bilbo. 5 A message to Bilbo. 6 A message to Bilbo. 7 A message to Bilbo. 8 A message to Bilbo. 9 A message to Bilbo. 1 A message to Gandalf. 2 A message to Gandalf. 3 A message to Gandalf. 4 A message to Gandalf. 5 A message to Gandalf. 6 A message to Gandalf. 7 A message to Gandalf. 8 A message to Gandalf. 9 A message to Gandalf. 1 A message to Nazgul. 2 A message to Nazgul. 3 A message to Nazgul. 4 A message to Nazgul. 5 A message to Nazgul. 6 A message to Nazgul. 7 A message to Nazgul. 8 A message to Nazgul. 9 A message to Nazgul. 1 A message to Bob. 2 A message to Bob. 3 A message to Bob. 4 A message to Bob. 5 A message to Bob. 6 A message to Bob. 7 A message to Bob. 8 A message to Bob. 9 A message to Bob. 1 A message to Grim. 2 A message to Grim. 3 A message to Grim. 4 A message to Grim. 5 A message to Grim. 6 A message to Grim. 7 A message to Grim. 8 A message to Grim. 9 A message to Grim. 1 A message to Laniakea. 2 A message to Laniakea. 3 A message to Laniakea. 4 A message to Laniakea. 5 A message to Laniakea. 6 A message to Laniakea. 7 A message to Laniakea. 8 A message to Laniakea. 9 A message to Laniakea. 1 A message to Dzevid. 2 A message to Dzevid. 3 A message to Dzevid. 4 A message to Dzevid. 5 A message to Dzevid. 6 A message to Dzevid. 7 A message to Dzevid. 8 A message to Dzevid. 9 A message to Dzevid. 1 A message to Levan. 2 A message to Levan. 3 A message to Levan. 4 A message to Levan. 5 A message to Levan. 6 A message to Levan. 7 A message to Levan. 8 A message to Levan. 9 A message to Levan. 1 A message to George. 2 A message to George. 3 A message to George. 4 A message to George. 5 A message to George. 6 A message to George. 7 A message to George. 8 A message to George. 9 A message to George. 1 A message to What. 2 A message to What. 3 A message to What. 4 A message to What. 5 A message to What. 6 A message to What. 7 A message to What. 8 A message to What. 9 A message to What.
我希望它以以下方式工作:
1 A message to Bilbo
2 A message to Gandalf
3 A message to Nazgul
4 A message to Bob
5 A message to Grim
6 A message to Laniakea
7 A message to Dzevid
8 A message to Levan
9 A message to George
10 A message to what
不確定您要達到的目標。 但是這是可以提供幫助的代碼。
let names = 'Bilbo, Gandalf, Nazgul, Bob, Grim, Laniakea, Dzevid, Levan, George, What';\
names = names.split(',');
names.forEach((name, index) => {
document.write(`${index} A message to ${name.trim()}`);
})
在此示例中,我們首先將長字符串轉換為名稱數組。 然后使用簡單的forEach
處理每個名稱。 請注意,我使用name.trim()
刪除拆分后剩余的不必要空間。
實際上,不需要添加for (let name of arr) { .... }
。 您可以刪除該行。 除此之外,您需要從i = 0
開始循環,因為數組從index 0
開始,
let names = 'Bilbo, Gandalf, Nazgul, Bob, Grim, Laniakea, Dzevid, Levan, George, What';
let arr = names.split(', ');
for(let i = 0; i < arr.length; i++){
document.write( `${i+1}` + ` A message to ${arr[i]}.` + `<br>` );
}
為什么要使用第二個循環? 像這樣設置一個計數器
let names = 'Bilbo, Gandalf, Nazgul, Bob, Grim, Laniakea, Dzevid, Levan, George, What';
let arr = names.split(', ');
let count = 1;
for (let name of arr) {
document.write( count + ` A message to ${name}.` + `<br>` );
count++;
}
要么
for (i = 1; i < arr.length; i++) {
document.write( i + ` A message to ${name}.` + `<br>` );
}
您可以使用地圖進行循環,並且不需要第二次循環,因為arr
是一維數組
let names = 'Bilbo, Gandalf, Nazgul, Bob, Grim, Laniakea, Dzevid, Levan, George, What'; let arr = names.split(', '); arr.map((d, i)=>{ document.write( i+1 + ` A message to ${d}.` + `<br>` ); // A message to Bilbo (and other names) })
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.