node.js 「通常の関数」と「アロー関数」のパフォーマンスを計測する

node.jsで、関数を作成する際に利用する「function」と「アロー関数」のパフォーマンスを計測するサンプルコードを記述してます。nodeのバージョンは14.15.1を使用してます。
環境
- OS windows10 pro 64bit
- node V14.15.1
パフォーマンス計測
benchmarkを使用して、「通常の関数」と「アロー関数」を使用して、関数を作成して実行して、パフォーマンスを計測するサンプルコードとなります。
benchmarkインストール
npm i benchmark
サンプルコード
const Benchmark = require('benchmark');
const suite = new Benchmark.Suite;
// add tests
suite
.add('function', function() {
function hoge1(num) {
num + num;
}
hoge1(1);
})
.add('arrow', function() {
hoge2 = num => num + num;
hoge2(1);
})
// add listeners
.on('cycle', function(event) {
console.log(String(event.target));
})
.on('complete', function() {
console.log('パフォーマンスがいいのは ' + this.filter('fastest').map('name') + 'となります');
})
// run async
.run({ 'async': true });
実行結果 (benchmarkを少しだけ日本語化してます)
function x 687,586,565 回/秒 ±1.77% (80 runs sampled)
arrow x 69,428,160 回/秒 ±0.19% (94 runs sampled)
パフォーマンスがいいのは functionとなります
1秒間に実行できる回数をみると、断然functionで定義した方がいい結果になりました。
-
前の記事
php intvalでint型にキャストする 2021.11.01
-
次の記事
PostgreSQL 日付の重複をチェックする 2021.11.01
コメントを書く