首頁 > web前端 > js教程 > 主體

迴圈:For 迴圈、While 迴圈、For...Of 迴圈、For...In 迴圈

PHPz
發布: 2024-08-07 09:57:32
原創
931 人瀏覽過

Loops: For Loops, While Loops, For...Of Loops, For...In Loops

循環的目的是重複某些功能。

某些類型的循環包括:

  • for 迴圈
  • while 循環
  • for...of 循環
  • for...循環

For循環

To 可以寫一個簡單的 for 循環,如下:

for (let i = 1; i <= 10; i++) {
  console.log(i); // prints numbers 1-10
}
登入後複製

要循環數組,我們可以執行以下操作:

const animals = ['lizard', 'fish', 'turtle'];

for (let i = 0; i < animals.length; i++) {
  console.log(i, animals[i]);
}
// 0 'lizard'
// 1 'fish'
// 2 'turtle'
登入後複製

我們也可以反向循環這個陣列:

for (let i = animals.length - 1; i >= 0; i--) {
  console.log(i, animals[i]);
}

// 2 'turtle'
// 1 'fish'
// 0 'lizard'
登入後複製

我們也可以在循環中循環:

for (let i = 0; i <= 2; i++) {
  for (let j = 0; j < 2; j++) {
    console.log(`i=${i}, j=${j}`);
  }
}

// i=0, j=0
// i=0, j=1
// i=1, j=0
// i=1, j=1
// i=2, j=0
// i=2, j=1
登入後複製

如果我們想要迭代數組的數組,這非常有用:

const seatingChart = [
  ['Abigale', 'Tim', 'Cynthia'],
  ['Bob', 'Carter', 'Zane', 'Tanja'],
  ['Quin', 'Xavier'],
];

// To print each name individually from seatingChart:
for (let i = 0; i < seatingChart.length; i++) {
  for (let j = 0; j < seatingChart[i].length; j++) {
    console.log(seatingChart[i][j]);
  }
}
登入後複製

While 循環

簡單 while 迴圈的範例是:

let num = 0;

// to print out 0 through 4:
while (num < 5) {
  console.log(num);
  num++;
}
登入後複製

中斷關鍵字

break 關鍵字可用來退出 while 迴圈:

let input = prompt('Say something:');
while (true) {
  input = prompt(input);
  if (input === 'stop copying me') {
    break; // finally stops prompting user
  }
}
登入後複製

它也可用於退出 for 迴圈。假設我們有這樣一行:

let line = ['Abby', 'Salvia', 'Jamie', 'Carter', 'John'];
登入後複製

我們想要輸出 Jamie 之前的每個人,但不輸出 Jamie:

for (let i = 0; i < line.length; i++) {
  if (line[i] === 'Jamie') break;
  console.log(line[i]);
}
登入後複製

For...Of 循環

如果我們想列印數組中的每個值,我們可以這樣做:

let people = ['Agitha', 'Bruce', 'Charlie', 'Dane', 'Ernie'];
// to print each persons name:
for (let person of people) {
  console.log(person);
}
登入後複製

為了讓之前的座位表示例更清晰,我們可以這樣做:

const seatingChart = [
  ['Abigale', 'Tim', 'Cynthia'],
  ['Bob', 'Carter', 'Zane', 'Tanja'],
  ['Quin', 'Xavier'],
];

// To print each name individually from seatingChart:
for (let row of seatingChart) {
  for (let person of row) {
    console.log(person);
  }
}
登入後複製

For...In 循環

如果我們想要迭代物件中的每個鍵值對,我們可以這樣做:

const testScores = {
  jim: 34,
  abby: 93,
  greg: 84,
  mark: 95,
  melvin: 73,
};

for (let person in testScores) {
  console.log(`${person} scored ${testScores[person]}`);
}
登入後複製

如果我們想使用 For...Of 得到 testScores 的平均值,我們可以這樣做:

let total = 0;
let scores = Object.values(testScores);
for (let score of scores) {
  total += score;
}
let avg = total / scores.length;
console.log(avg);
登入後複製

以上是迴圈:For 迴圈、While 迴圈、For...Of 迴圈、For...In 迴圈的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:dev.to
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!