-1

「days」という名前の配列の日数を大文字にし、「console.log(days)」を呼び出すだけで結果を配列形式で取得し
たい。以下を参照してください。ループ?

edit(summary) : この場合、各「日」の値が変更されない理由を知るために、これに質問しました。そして、Suren Srapyan はこれに対してすばらしい答えを提供してくれました。したがって、day はアイテムの値のコピーにすぎず、別の値に変更しても配列内のアイテムは変更されません。

let days = ['sunday', 'monday', 'tuesday', 'wednesday', 'thursday', 'friday', 'saturday'];

for (day of days) {
    day = day[0].toUpperCase() + day.slice(1);
    // your code goes here

}
console.log(days);
4

4 に答える 4

0

for of単純なループとは異なります。その下に別の建物があります。

ループ内の各アイテムのコピーを取得しています。アイテムの値のコピーday過ぎず、別の値に変更しても配列内のアイテムは変更されません。

for ofこれがループの下にあるものです。

let days = ['sunday', 'monday', 'tuesday', 'wednesday', 'thursday', 'friday', 'saturday'];

const iterator = days[Symbol.iterator]();
let item = iterator.next();

while(!item.done) {
    console.log(item.value);
    item = iterator.next();
}

上記のコードは、for ofループが読み取り専用であることを示しています

Array#map関数を使用できます

let days = ['sunday', 'monday', 'tuesday', 'wednesday', 'thursday', 'friday', 'saturday'];

days = days.map(day => day[0].toUpperCase() + day.slice(1));

console.log(days);

于 2017-09-17T07:58:42.443 に答える