do...while

Wykonuje blok kodu co najmniej raz, a potem powtarza go, dopóki warunek jest prawdziwy.

Na tej stronie

Przykład

#
JavaScript
let attempts = 0

do {
  attempts++
  console.log(`Próba ${attempts}`)
} while (attempts < 3)
Konsola
Próba 1
Próba 2
Próba 3

Definicja i zastosowanie

#

Pętla do...while działa jak while, ale warunek sprawdza dopiero po wykonaniu bloku. Dzięki temu kod w środku zawsze uruchomi się przynajmniej raz, nawet jeśli warunek od początku jest fałszywy.

To naturalny wybór, gdy najpierw trzeba coś zrobić, a dopiero potem ocenić wynik: wygenerować wartość i sprawdzić, czy pasuje, zapytać użytkownika i powtórzyć pytanie przy błędnej odpowiedzi albo pobrać pierwszą porcję danych.

Zmienne zadeklarowane przez let lub const wewnątrz bloku nie są widoczne w warunku. To, co sprawdzasz w while (...), zadeklaruj przed pętlą.

Składnia

#
Składnia
do {
  // instrukcje
} while (condition)

Więcej przykładów

#
Blok wykona się mimo fałszywego warunku
JavaScript
let lives = 0

do {
  console.log('Start gry, życia:', lives)
} while (lives > 0)

while (lives > 0) {
  console.log('To się nie wypisze')
}
Konsola
Start gry, życia: 0
Szukanie pierwszego wolnego kodu
JavaScript
const taken = ['A1', 'A2', 'A3']
let number = 0
let code

do {
  number++
  code = `A${number}`
} while (taken.includes(code))

console.log(code)
Konsola
A4

Obsługa przeglądarek

#

Szeroko dostępne

Działa we wszystkich nowoczesnych przeglądarkach, także na telefonach. Możesz używać bez obaw.

  • Chrome
  • Edge
  • Firefox
  • Safari

Dobre praktyki

#
  • Zmienną używaną w warunku deklaruj przed do, bo blok pętli ma własny zasięg.
  • do...while spotkasz rzadziej niż while czy for. Używaj go wtedy, gdy „co najmniej raz” naprawdę wynika z logiki programu.

Powiązane hasła

#

Widzisz błąd albo brakuje przykładu? Napisz do nas.