【JavaScript】await / async でタイマー
コピペ用なので解説は無し。
await / async キーワードを使用してタイマー関数を作ることが可能。
【timer.html】
<!DOCTYPE=html> <html> <head> <meta charset="UTF-8"/> <title>Timer</title> <script type="text/javascript" src="timer.js"></script> </head> <body> </body> </html>
【timer.js】
var wait = function( ms ) { return new Promise( ( resolve, reject ) => { setTimeout( () => { resolve( '_' ); }, ms ); }); }; var main = async function() { for ( var i = 0; i < 10; i++ ) { console.log( i + 1 ); await wait( 1000 ); } }; main();
main関数をasync functionにし、wait関数ではPromiseオブジェクトを返す。