Rumah > hujung hadapan web > tutorial js > Gelung: Untuk Gelung, Sementara Gelung, Untuk...Daripada Gelung, Untuk...Dalam Gelung

Gelung: Untuk Gelung, Sementara Gelung, Untuk...Daripada Gelung, Untuk...Dalam Gelung

PHPz
Lepaskan: 2024-08-07 09:57:32
asal
1210 orang telah melayarinya

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

Maksud gelung adalah untuk mengulangi beberapa fungsi.

Beberapa jenis gelung termasuk:

  • untuk gelung
  • gelung sambil
  • untuk...gelung
  • untuk...dalam gelung

Untuk Gelung

Untuk boleh menulis gelung untuk mudah seperti berikut:

for (let i = 1; i <= 10; i++) {
  console.log(i); // prints numbers 1-10
}
Salin selepas log masuk

Untuk menggelungkan tatasusunan, kita boleh lakukan seperti berikut:

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

for (let i = 0; i < animals.length; i++) {
  console.log(i, animals[i]);
}
// 0 'lizard'
// 1 'fish'
// 2 'turtle'
Salin selepas log masuk

Kita juga boleh menggelungkan tatasusunan ini secara terbalik:

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

// 2 'turtle'
// 1 'fish'
// 0 'lizard'
Salin selepas log masuk

Kami juga boleh membuat gelung dalam gelung:

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
Salin selepas log masuk

Ini berguna jika kita ingin mengulangi pelbagai tatasusunan:

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]);
  }
}
Salin selepas log masuk

Manakala Gelung

Contoh gelung while yang ringkas ialah:

let num = 0;

// to print out 0 through 4:
while (num < 5) {
  console.log(num);
  num++;
}
Salin selepas log masuk

Kata kunci pecah

Kata kunci rehat boleh digunakan untuk keluar dari gelung sementara:

let input = prompt('Say something:');
while (true) {
  input = prompt(input);
  if (input === 'stop copying me') {
    break; // finally stops prompting user
  }
}
Salin selepas log masuk

Ia juga boleh digunakan untuk keluar dari gelung for. Katakan kita mempunyai talian:

let line = ['Abby', 'Salvia', 'Jamie', 'Carter', 'John'];
Salin selepas log masuk

dan kami mahu mengeluarkan semua orang yang datang sebelum Jamie, tetapi bukan Jamie:

for (let i = 0; i < line.length; i++) {
  if (line[i] === 'Jamie') break;
  console.log(line[i]);
}
Salin selepas log masuk

Untuk...Daripada Gelung

Jika kita ingin mencetak setiap nilai daripada tatasusunan, kita boleh melakukan sesuatu seperti:

let people = ['Agitha', 'Bruce', 'Charlie', 'Dane', 'Ernie'];
// to print each persons name:
for (let person of people) {
  console.log(person);
}
Salin selepas log masuk

Untuk menjadikan contoh carta tempat duduk kami dari sebelumnya lebih mudah dibaca, kami boleh melakukan:

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);
  }
}
Salin selepas log masuk

Untuk...Dalam Gelung

Jika kita ingin mengulangi setiap pasangan nilai kunci dalam objek, kita boleh melakukan sesuatu seperti:

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

for (let person in testScores) {
  console.log(`${person} scored ${testScores[person]}`);
}
Salin selepas log masuk

Jika kita ingin mendapatkan purata Skor ujian menggunakan For...Of, kita boleh lakukan seperti berikut:

let total = 0;
let scores = Object.values(testScores);
for (let score of scores) {
  total += score;
}
let avg = total / scores.length;
console.log(avg);
Salin selepas log masuk

Atas ialah kandungan terperinci Gelung: Untuk Gelung, Sementara Gelung, Untuk...Daripada Gelung, Untuk...Dalam Gelung. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan