node.js 文字列から1文字取得できる「charAt」と「[]」のパフォーマンスを計測する
node.jsで、文字列から1文字取得できる「charAt」と「[]」のパフォーマンスを計測するサンプルコードを記述してます。nodeのバージョンは14.15.1を使用してます。
環境
- OS windows10 pro 64bit
- node V14.15.1
パフォーマンス計測
benchmarkを使用して、「charAt」と「[]」を使用して、文字列から1文字取得できるコードを実行して、パフォーマンスを計測した結果を表示します。
benchmarkインストール
npm i benchmark
パフォーマンス計測コード
const Benchmark = require('benchmark');
const suite = new Benchmark.Suite;
suite
.add('charAt', function() {
'abcde'.charAt(2);
})
.add('[]', function() {
'abcde' [2];
})
.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を少しだけ日本語化してます)
[1回目]
charAt x 656,813,268 回/秒 ±0.69% (88 runs sampled)
[] x 704,238,804 回/秒 ±2.00% (83 runs sampled)
パフォーマンスがいいのは []となります
[2回目]
charAt x 658,317,528 回/秒 ±0.72% (88 runs sampled)
[] x 685,977,227 回/秒 ±1.74% (77 runs sampled)
パフォーマンスがいいのは []となります
[3回目]
charAt x 659,873,318 回/秒 ±0.73% (92 runs sampled)
[] x 686,597,391 回/秒 ±1.68% (84 runs sampled)
パフォーマンスがいいのは []となります
1秒間に実行できる回数をみると、[]を使用して取得した方がパフォーマンスは良さそうな結果となりました。
-
前の記事
GitKrakenでBranchを作成する 2021.07.05
-
次の記事
Ruby ハッシュの値を削除する 2021.07.06
コメントを書く