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

  • Absolute Zero(Programming Tutorials)

    Absolute Zer

    22 Kasım 2012
  • ArkticPlanet

    ArkticPlanet

    9 ŞUBAT 2010
  • Vladimir Jenko

    Vladimir Jen

    1 Mart 2010