記録

demo23、javascriptの非同期同期処理🐋

今日はJavaScriptで非同期、同期処理のことに付いて考えてみた。関数を呼び出して返却の値を変数に渡す処理を作って頂けると非同期処理と同期処理の違いがわかるかと思います。例えばこういうJSの処理があるとします。

document.getElementById("btn").addEventListener("click",(e)=>{
	var a = test1();
	var b = test2().then(b =>{
		console.log(b);	
		return b;
	});;
	var c = test3().then(c =>{
		console.log(c);	
		return c;
	});
	console.log("btn =" + a);
	console.log("btn =" + b);
	console.log("btn =" + c);
});

function test1(){
	return 1;
}
async function test2(){
	return await 2;
}
async function test3(){
	return 3;
}

こちらの処理を試すと結果、このような内容がデバックモードで表示されます。予想通りの結果が返ってきましたか?それとも予想外の結果が返ってきましたか?

asyncが付いていてawaitがついてない場合とついている場合とでは違いの差がわかるかと思います。いろいろと試してみると非同期処理の応用が出来るかと思います、逆に言えば上手く非同期処理を使いこなすことが出来るとコードが短縮出来たり、効率的に回せるのではないかと思います。自分もこれらを使っていろいろと作ってみたいですね(´Д`)。因みに今回、Promiseを簡略化したパターンでコードを書いています。

尚、Demo23にはデモコードが存在しますので動作を検証してみてください。
https://www.zip358.com/tool/demo23/

関連記事

  1. 記録

    なんか自分が正しいと思う人が増えている。

    なんか自分が正しいと思う人が増えている。多種多様の意見があっていい…

  2. 記録

    April Fools' Day :)

    Today is April Fool's Day, isn'…

  3. 記録

    ios14のウィジェットをカスタマイズする方法。

    ios14のウィジェットをカスタマイズする方法を紹介している動…

  4. 記録

    PS3とかPS4を液晶ディスプレイに繋げれば出力されるじゃないか

    PS3とかPS4を液晶ディスプレイに繋げれば出力されるじゃないか?…

  5. 記録

    LCCで高知東京間往復(ジェットスター)が2018年内にサービスはじめるよ

    LCCで高知東京間往復(ジェットスター)が2018年内にサービスはじ…

  6. 記録

    26-38::12年:IT業界を転々としてきた。

    IT業界を転々してきた中で思うこと。技術を持った人々というのはいる…

PAGE TOP