LoginSignup
10
12

More than 5 years have passed since last update.

JavaScriptでカンマ除去の速度チェック

Posted at

実行コード

remove_comma.js
'use strict';

let count = 1000000, num;

// Split-Join
for(let i = 0; i < count; i++) {
  num = Number('1,000'.split(',').join(''));
}

// Replace
for(let i = 0; i < count; i++) {
  num = Number('1,000'.replace(/,/g, ''));
}

// Split-Join(3 commas)
for(let i = 0; i < count; i++) {
  num = Number('1,000,000,000'.split(',').join(''));
}

// Replace(3 commas)
for(let i = 0; i < count; i++) {
  num = Number('1,000,000,000'.replace(/,/g, ''));
}

結果(参考)

私の環境では

Chrome DevToolの場合

Split-Join Replace Split-Join(3 commas) Replace(3 commas)
4424.411ms 4058.820ms 3918.996ms 4146.879ms

Node.jsの場合

Split-Join Replace Split-Join(3 commas) Replace(3 commas)
214ms 203ms 299ms 311ms

となりました。

カンマが少ない場合はReplaceで、カンマが多い場合はSplit-Joinが早いみたいです。
Nodeの場合、誤差レベルっぽいですが。

ちなみにChrome上での使用が目的のため、Nodeは参考程度に実行しただけです。

間違えてる、こっちのほうが早いよ等ありましたら教えて下さい!!

10
12
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
10
12