SORU
14 Mart 2011, PAZARTESİ


Bir dize kontrol etmek için en hızlı yolu Javascript başka bir altdizge?

Javascript performans sorunu ile uğraşıyorum. Ben sadece sormak istiyorum: bir dizenin başka bir dize (sadece boolean değeri lazım) içeren olup olmadığını kontrol etmek için en hızlı yolu nedir? Sizin fikir ve örnek kod kod önerebilir misiniz?! Çok teşekkür ederim!

CEVAP
14 Mart 2011, PAZARTESİ


İki olasılığı vardır:

  1. Regular expression:

    (new RegExp('word')).test(str)
    // or
    /word/.test(str)
    
  2. indexOf:

    str.indexOf('word') !== -1
    

Regular expressions seem to be faster (en az Krom 10).

Performance test - short haystack
Performance test - long haystack

Güncelleme:

Daha hızlı olduğu kesin olarak söylenemez. Tarayıcılar arasındaki farklar çok büyük. Chrome 10 indexOf daha hızlı gibi görünüyor olsa da, Safari 5, indexOf açıkça başka bir yöntem daha yavaştır.

Seni görmek ve denemek için kendiniz için. Bu sizin ihtiyaçlarınıza bağlıdır. Örneğin birbüyük / küçük harf duyarlıarama düzenli ifadeler ile daha hızlı.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Disney Pets and Animals

    Disney Pets

    29 ŞUBAT 2012
  • Skrillex

    Skrillex

    6 NİSAN 2010
  • waterfairy17

    waterfairy17

    9 Aralık 2007