Przejdź do treści stopki
POMOC NODE

JavaScript – poczekaj 5 sekund (jak to działa dla programistów)

W JavaScript oczekiwanie przez określony czas, np. 5 sekund, jest częstym wymaganiem. Niezależnie od tego, czy chcesz opóźnić działanie, czy zasymulować stan ładowania, zrozumienie sposobu implementacji opóźnienia w JavaScript jest niezbędne w przypadku kodu synchronicznego. W tym artykule omówimy różne metody oczekiwania przez 5 sekund w JavaScript, wraz z przykładami każdej z nich, służącymi do wstrzymania wykonywania kodu JavaScript. Ponadto utworzymy pliki PDF za pomocą IronPDF for Node.js, wykorzystując funkcje asynchroniczne i funkcje ustawiania limitów czasu.

1. Korzystanie z funkcji setTimeout()

Funkcja setTimeout() jest wbudowaną funkcją JavaScript, która wykonuje określoną funkcję lub fragment kodu po upływie określonego czasu w milisekundach.

Przykład

console.log("Start");

// Schedules a function to be executed after 5000 milliseconds (5 seconds)
setTimeout(() => {
    console.log("Waited for 5 seconds");
}, 5000);

console.log("End");
console.log("Start");

// Schedules a function to be executed after 5000 milliseconds (5 seconds)
setTimeout(() => {
    console.log("Waited for 5 seconds");
}, 5000);

console.log("End");
JAVASCRIPT

W tym przykładzie kod wewnątrz funkcji setTimeout() zostanie wykonany po upływie 5000 milisekund (lub 5 sekund).

JavaScript – czekaj 5 sekund (jak to działa dla programistów): Rysunek 1 – Wynik konsoli przy użyciu funkcji JavaScript setTimeout() i oczekiwaniu przez 5000 milisekund lub 5 sekund.

2. Korzystanie z obietnic (Promises) oraz async/await

Można również używać Promises wraz z async/await do tworzenia opóźnień w JavaScript, znanych również jako kod asynchroniczny.

Przykład

async function delay() {
    console.log("Start");
    // Creates a promise that resolves after 5000 milliseconds (5 seconds)
    await new Promise(resolve => setTimeout(resolve, 5000));
    console.log("Waited for 5 seconds");
    console.log("End");
}

// Call the async function
delay();
async function delay() {
    console.log("Start");
    // Creates a promise that resolves after 5000 milliseconds (5 seconds)
    await new Promise(resolve => setTimeout(resolve, 5000));
    console.log("Waited for 5 seconds");
    console.log("End");
}

// Call the async function
delay();
JAVASCRIPT

W tym przykładzie funkcja delay() wykorzystuje async/await do wstrzymania wykonania na 5 sekund przy użyciu Promise.

JavaScript – poczekaj 5 sekund (jak to działa dla programistów): Rysunek 2 – Wynik konsoli przy użyciu funkcji JavaScript setTimeout() w trybie asynchronicznym w ramach obietnicy (Promise) i oczekiwaniu przez 5000 milisekund lub 5 sekund.

3. Korzystanie z funkcji setInterval()

Chociaż funkcja setInterval() jest zazwyczaj używana do powtarzających się czynności, można jej również użyć do utworzenia jednorazowego opóźnienia poprzez wyczyszczenie interwału po upływie żądanego czasu.

Przykład

console.log("Start");

let timer = setInterval(() => {
    console.log("Waited for 5 seconds");
    // Clear the interval after the desired delay
    clearInterval(timer);
}, 5000);

console.log("End");
console.log("Start");

let timer = setInterval(() => {
    console.log("Waited for 5 seconds");
    // Clear the interval after the desired delay
    clearInterval(timer);
}, 5000);

console.log("End");
JAVASCRIPT

W tym przypadku funkcja setInterval() powtarza podaną funkcję co 5 sekund, dopóki nie wyczyścimy interwału za pomocą funkcji clearInterval().

JavaScript – czekaj 5 sekund (jak to działa dla programistów): Rysunek 3 – Wynik konsoli przy użyciu metody JavaScript setInterval() i oczekiwaniu przez 5000 milisekund lub 5 sekund. . Następnie wyczyść interwał za pomocą funkcji clearInterval().

4. Korzystanie z nowej funkcji Promise()

Możesz utworzyć obiekt Promise, który zostanie zrealizowany po upływie określonego czasu, używając metody new Promise().

Przykład

console.log("Start");

// Delay function that returns a promise which resolves after `ms` milliseconds
const delay = (ms) => new Promise(resolve => setTimeout(resolve, ms));

// Use the delay function
delay(5000).then(() => {
    console.log("Waited for 5 seconds");
    console.log("End");
});
console.log("Start");

// Delay function that returns a promise which resolves after `ms` milliseconds
const delay = (ms) => new Promise(resolve => setTimeout(resolve, ms));

// Use the delay function
delay(5000).then(() => {
    console.log("Waited for 5 seconds");
    console.log("End");
});
JAVASCRIPT

W tym przykładzie funkcja delay() zwraca obietnicę (Promise), która zostaje zrealizowana po 5 sekundach, a my używamy .then(), aby wykonać kod po upływie opóźnienia.

JavaScript – czekaj 5 sekund (jak to działa dla programistów): Rysunek 4 – Wynik konsoli przy użyciu Promise oraz funkcji JavaScript delay() i then() oraz oczekiwaniu przez 5 sekund.

5. Wprowadzenie do IronPDF JS

Biblioteka IronPDF JavaScript Library for PDF Generation udostępnia bibliotekę JavaScript, która umożliwia programistom manipulowanie i generowanie dokumentów PDF bezpośrednio z poziomu JavaScript po stronie klienta. Oferuje szereg funkcji do tworzenia, edycji i konwersji plików PDF przy użyciu JavaScript.

Instalacja IronPDF JS

Aby rozpocząć korzystanie z IronPDF JS, należy dołączyć bibliotekę IronPDF JavaScript do swojego projektu. Można ją dołączyć za pośrednictwem CDN lub pobrać bezpośrednio ze strony internetowej IronPDF.

npm install @ironsoftware/ironpdf
npm install @ironsoftware/ironpdf
SHELL

6. Użycie JavaScriptu "Wait for 5 Seconds" z IronPDF

Zobaczmy teraz, jak możemy połączyć techniki opóźniania kodu JavaScript z IronPDF, aby utworzyć dokument PDF po odczekaniu 5 sekund przy użyciu asynchronicznego interpretera JavaScript w poniższym fragmencie kodu.

Przykład kodu

import { PdfDocument } from "@ironsoftware/ironpdf";

(async () => {
    const html = `<html><body><h1>Hello, IronPDF!</h1></body></html>`;
    // Wait for 5 seconds
    await new Promise(resolve => setTimeout(resolve, 5000));
    // Create PDF from the HTML content
    const pdfDocument = await PdfDocument.fromHtml(html);
    // Save the PDF file
    await pdfDocument.saveAs("Waited.pdf");  
    console.log("PDF Created after wait");
})();
import { PdfDocument } from "@ironsoftware/ironpdf";

(async () => {
    const html = `<html><body><h1>Hello, IronPDF!</h1></body></html>`;
    // Wait for 5 seconds
    await new Promise(resolve => setTimeout(resolve, 5000));
    // Create PDF from the HTML content
    const pdfDocument = await PdfDocument.fromHtml(html);
    // Save the PDF file
    await pdfDocument.saveAs("Waited.pdf");  
    console.log("PDF Created after wait");
})();
JAVASCRIPT

W tym fragmencie kodu funkcja async czeka 5 sekund, używając async/await i setTimeout(). Po upływie opóźnienia tworzy nowy dokument PDF przy użyciu metody PdfDocument.fromHtml() biblioteki IronPDF z prostą treścią HTML. Możesz zastąpić kod generujący plik PDF swoimi konkretnymi wymaganiami lub wykorzystać wygenerowane dane PDF do dalszego przetwarzania.

JavaScript – odczekaj 5 sekund (jak to działa dla programistów): Rysunek 5 – Wynik wyświetlony w konsoli przy użyciu funkcji JavaScript setTimeout() i odczekaniu 5 sekund. Następnie kod IronPDF konwertuje ciąg HTML na dokument PDF i wyświetla w konsoli komunikat PDF utworzony po oczekiwaniu.

Wnioski

Oczekiwanie przez określony czas w JavaScript jest częstym zadaniem, z którym programiści często się spotykają. W tym artykule omówiliśmy różne metody oczekiwania przez 5 sekund w JavaScript, w tym użycie setTimeout(), Promises z async/await, setInterval() oraz new Promise() i funkcji sleep w JavaScript.

Dodatkowo wprowadziliśmy IronPDF JS do zarządzania plikami PDF za pomocą JavaScript. Więcej przykładów kodu można znaleźć w sekcji Przykłady IronPDF for Node.js.

Dzięki zrozumieniu tych technik i narzędzi można skutecznie wdrażać opóźnienia w aplikacjach JavaScript i wykorzystywać je w bardziej złożonych zadaniach, takich jak generowanie dokumentów PDF lub wykonywanie operacji asynchronicznych. Niezależnie od tego, czy jesteś początkującym, czy doświadczonym programistą, solidne opanowanie tych podstaw poprawi Twoje umiejętności kodowania i pozwoli Ci pisać bardziej wydajne i solidne aplikacje JavaScript.

Darrius Serrant
Full Stack Software Engineer (WebOps)

Darrius Serrant posiada tytuł licencjata z informatyki z Uniwersytetu Miami i pracuje jako Full Stack WebOps Marketing Engineer w Iron Software. Już od młodych lat zainteresował się kodowaniem, postrzegając informatykę jako zarówno tajemniczą, jak i dostępną, co czyni ją doskonałym medium dla kreatywności ...

Czytaj więcej

Zespol wsparcia Iron

Jestesmy online 24 godziny, 5 dni w tygodniu.
Czat
Email
Zadzwon do mnie