いつでもどこでもトリプルイコール
2279 ワード
こんにちは👋🏼
今日、トリプルイコールは、オペランドの型を比較するために追加のチェックを行うことに気付きました.
興奮してベンチマークを書いてみました!
私はそれのために2つの面白くてばかげた関数を書きました
ダブルイコールで
そしてトリプルイコールで
その後、ベンチマークを実行したところ、予想外のことがわかりました.
平均
関数を書き直し、文字列
そのため、関数の実行時間に大きな違いはないことがわかりました.
そう.私はどのような結論を出すことができますか?
Javascript エンジンは型変換に多くの時間を費やしますが、トリプルイコールを使用してもコードの処理速度はそれほど遅くはありません.
ありがとうございました!
今日、トリプルイコールは、オペランドの型を比較するために追加のチェックを行うことに気付きました.
興奮してベンチマークを書いてみました!
私はそれのために2つの面白くてばかげた関数を書きました
ダブルイコールで
const f1 = () => {
const v = Math.random();
if (v === '2') {
return true;
}
return false;
};
そしてトリプルイコールで
const f2 = () => {
const v = Math.random();
if (v == '2') {
return true;
}
return false;
};
その後、ベンチマークを実行したところ、予想外のことがわかりました.
平均
f1
は f2
よりも 80% 高速です.何?!関数を書き直し、文字列
'2'
を番号 2
に置き換えて、再度ベンチマークを実行しました.そのため、関数の実行時間に大きな違いはないことがわかりました.
そう.私はどのような結論を出すことができますか?
Javascript エンジンは型変換に多くの時間を費やしますが、トリプルイコールを使用してもコードの処理速度はそれほど遅くはありません.
ありがとうございました!
Reference
この問題について(いつでもどこでもトリプルイコール), 我々は、より多くの情報をここで見つけました https://dev.to/vladimirschneider/always-and-everywhere-make-triple-equals-24nテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol