Prototype.js Kılavuzu - 5

JavaScript & DOM & Hazır Kütüphaneler orhan

Metin (string) işlemleri

Verilerimizi işlerken ihtiyaç duyabileceğimiz oldukça pratik fonksiyonları da bize sunan Prototype ile onlarca satır kodun yaptığı işlemleri her zamanki gibi tek satırlık bir ifade ile elde etmek mümkün olabiliyor. Metin işlemleri ile ilgili metotlar şu şekilde:

.blank

Metnin içeriğinin beyaz boşluklardan (sekme veya boşluklar gibi) oluşup oluşmadığını döndürür. (1.5 rc-1 ve sonrası için)

.camelize

Metin içindeki tireleri siler ve tireden sonraki karakteri büyük harf yapar (background-color -> backgroundColor)

.capitalize

Metin içindeki tüm kelimelerin ilk harfini büyük harfe çevirir.

.dasherize

Metin içindeki büyük harfleri tire (-) ile değiştirir ve küçültür. (backgroundColor -> background-color)

.empty

Metnin boş olup olmadığını döndürür. Boş ile ifade edilen metnin değerinin ‘’ gibi hiçbirşey içermemesidir. (1.5 rc-1 ve sonrası için)

.endsWith

Metnin belirtilen ifade ile bitip bitmediğini döndürür. (1.5 rc-1 ve sonrası için)

var metin = 'Bu bir deneme metni';
metin.endsWith(’metni’);
// true

.escapeHTML

Metin içindeki özel HTML karakterlerini enkode edilmiş hale (entities) çevirir.

'<div class="article">This is an article</div>'.escapeHTML();
// "&lt;div class="article"&gt;This is an article&lt;/div&gt;"

.evalScripts

Metin içinde geçen "<script>" etiketlerinin içeriğini yürütür.

'lorem... <script>2 + 2</script>'.evalScripts();

// 4

.extractScripts

Metin içindeki "<script>" etiketlerinin içeriğini alır ve bir dizi içine yerleştirir.

var myScripts = 'Bu bir deneme metnidir <script>2 + 2</script><script>alert("hello world!")</script>'.extractScripts();
// [’2 + 2′, ‘alert("merhaba dünya!")’]

var myReturnedValues = myScripts.map(function(script) {

return eval(script);

});

// [4, undefined] (ve ‘merhaba dünya!’ şeklinde bir uyarı mesajı çıkar)

.gsub

Metinde belirtilen ifadeleri bulup istenen bir şeyle değiştirir. Düzenli ifade ve şablon uyumludur.

mouseEvents.gsub(' ', ', ');
// ‘click, dblclick, mousedown, mouseup, mouseover, mousemove, mouseout’
mouseEvents.gsub(/\w+/, function(match){return ‘on’ + match[0].capitalize()});
// ‘onClick onDblclick onMousedown onMouseup onMouseover onMousemove onMouseout’

.include

Belirtilen ifadenin metin içerisinde geçip geçmediğini döndürür. (1.5 rc-1 ve sonrası için)

var metin = 'Bu bir deneme metni';
metin.include(’deneme’);
// true

Sayfalar: 1 2 3

Toplamda 6178 kez okunmuş.
Şu an 1 kişi okuyor.
En fazla 7 kişi aynı anda okumuş.
Bugün 13 kez okunmuş.

Etiketler:

1 oy2 oy3 oy4 oy5 oy (5 oy, ortalama 4.6) Oylanıyor ... Oylanıyor ...

  1. PHP ve Yerleşik DOM Sınıfları
  2. Javascript Sanal Klavye Yapalım
  3. Ajax Olmasaydı Ne Yapardık ? :)

Trackback Yorumları takip et Baskı Önizleme

5 yorum var

  1. # grkn | 19 Nisan 2007, 18:54 Gravatar

    teşekkürler..

  2. # Umut | 19 Nisan 2007, 23:07 Gravatar

    Bu Yazı Dizisi Gerçekten Çook Güzel Teşekkürler . . .

  3. # ayşe | 27 Nisan 2007, 22:46 Gravatar

    Teşekkürler…
    Konu ile ilgisi yok ama normalize() ne işe yarıyor. Mesajla cevap verebilir misin?

  4. # eburhan | 27 Nisan 2007, 22:52 Gravatar

    Prototype.js içerisindeki normalize() yöntemi ile bir formdaki değerleri kullanarak kolayca sorgu cümlesi hazırlayabilirsiniz.

    Örneğin bir Form içerisinde şu alanlar olsun:

    İsim: <input type="text" name="isim" value="Erhan">
    Mail: <input type="text" name="mail" value="deneme@deneme.com">

    Bu alanlara girilen değerleri AJAX ile sunucu tarafındaki bir sayfaya gönderirken isim=Erhan&mail=deneme@deneme.com şeklinde bir sorgu cümleciği hazırlamanız gerekiyor. İşte normalize() yöntemi bu sorgu cümleciğini bizim yerimize otomatik olarak oluşturma görevini üsteleniyor.

  5. # ayşe | 19 Mayıs 2007, 22:25 Gravatar

    Teşekkürler Erhan Hocam,
    evalScript() fonksiyonunu denedim çalışmadi. Script kapatma etiketinin önüne \ getirince çalıştı.Böyleydi:

    Böyle yaptım:

    var metin = ‘lorem… 2 + 2′.evalScripts();

    alert(metin); // 4

Yorum yazın

sayfa sayacı