Node.jsの型変換の速度を計測【String(10) VS 10 + ”】どちらが速いのか?

スポンサーリンク
Pocket
LINEで送る

Node.jsの型変換で

10 + ""

こういうコードを書いている人がいた。

数値と空文字を連結することで文字列に変換している処理。

自分は今まで以下のように型変換させていたのでどちらがパフォーマンスがいいのか気になって調べてみることにした。

String(10)

 

速度テスト

const list = []
const startTime = new Date();
for(let i = 0; i < 10000000; i++){
  // list.push(i + '')
  list.push(String(i))                                                      
}           
const endTime = new Date();             
console.log(endTime - startTime + 'ms')

上記のコードで1000万回型変換を行い速度を計測する。

スポンサーリンク

今回はそれぞれ10回ずつ計測してみました。

 

結果

さて結果です。

10 + ”   =>  1402ms

String(10)  =>  1419ms

 

10+”の勝利!!!

といっても誤差範囲ですね。

この程度の差であれば正直どっち使っても問題ないので可読性高い方で書きましょう。

https://gist.github.com/komayuki/59a3e22cff470c83c169219bc29651fd