Anda harus menunggu TypeScript 2.0 dengan async/ awaituntuk dukungan ES5 karena sekarang hanya didukung untuk kompilasi TS ke ES6.
Anda dapat membuat fungsi penundaan dengan async:
function delay(ms: number) {
return new Promise( resolve => setTimeout(resolve, ms) );
}
Dan sebut saja
await delay(300);
Harap dicatat, bahwa Anda awaithanya dapat menggunakan asyncfungsi di dalam .
Jika Anda tidak bisa ( katakanlah Anda sedang membangun aplikasi nodejs ), cukup tempatkan kode Anda dalam asyncfungsi anonim . Berikut ini sebuah contoh:
(async () => {
// Do something before delay
console.log('before delay')
await delay(1000);
// Do something after
console.log('after delay')
})();
Contoh Aplikasi TS: https://github.com/v-andrew/ts-template
Di OLD JS Anda harus menggunakan
setTimeout(YourFunctionName, Milliseconds);
atau
setTimeout( () => { /*Your Code*/ }, Milliseconds );
Namun dengan setiap browser utama yang mendukung async/ awaititu usang.
Pembaruan: TypeScript 2.1 ada di sini bersama async/await.
Hanya saja, jangan lupa bahwa Anda perlu Promiseimplementasi ketika Anda mengkompilasi ke ES5, di mana Janji tidak tersedia secara asli.