使用方法によってパフォーマンスに違いはありますか?
str.indexOf("src")
そして
str.match(/src/)
私は個人的にはmatch
(and regexp) を好みますが、同僚は逆のことを言っているようです。それが問題になるかどうか疑問に思っていました...?
編集:
最初に言っておくべきだったのは、これはワイルドカードなどを使用した完全な正規表現検索ではなく、部分的なプレーン文字列マッチング (JQuery のクラス属性内の識別子を取得するため) を実行する関数用だということです。
class='redBorder DisablesGuiClass-2345-2d73-83hf-8293'
つまり、次の違いがあります:
string.indexOf('DisablesGuiClass-');
そして
string.match(/DisablesGuiClass-/)
ベストアンサー1
RegExpは確かにindexOfよりも遅いです(ここ) ですが、通常は問題にはなりません。RegExp を使用する場合は、文字列が適切にエスケープされていることを確認する必要があり、これも考慮すべき追加の事項です。
これら 2 つの問題はさておき、2 つのツールが必要な機能を正確に実行できる場合は、よりシンプルなツールを選択しないのはなぜでしょうか。