Prototype.js Kılavuzu - 5

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

.inspect

Daha önce anlatılmıştı. Metnin hata ayıklama formatına (debug mode) uygun halini döndürür.

.parseQuery

"String.toQueryParams()" ile eşdeğer.

.scan

Metin içinde bir ifadeyi arar, eğer eşleşme bulursa bildirilen fonksiyon veya işlevi yürütür. Düzenli ifade (regular expression) uyumludur.

var fruits = [];
‘apple, pear & orange’.scan(/\w+/, function(match){ fruits.push(match[0])});

// [’apple’, ‘pear’, ‘orange’]

.startsWith

Metnin belirtilen ifade ile başlayıp başlamadığını döndürür. (1.5 rc-1 ve sonrası için)

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

.strip

Metin başında ve sonundaki fazla beyaz karakterlerin hepsini kırpar.

' merhaba dünya! '.strip();

// ‘merhaba dünya!’

.stripScripts

Metin içinde geçen "<script>" etiketlerini kırpar.

'a <a href="#">link</a><script>alert("hello world!")</script>'.stripScripts().stripTags();

// ‘a link’

.stripTags

HTML etiketlerini kırpar, metni HTML etiketlerinden temizler.

.sub

Metinde belirtilen ifadeleri bulup istenen bir şeyle değiştirir. Düzenli ifade ve şablon uyumludur. Aranan ifade metin içinde birden fazla sayıda varsa 3. parametre ile gönderilen sayı kadar değiştirme yapılır. Eğer 3. parametre verilmezse varsayılan olarak 1 atanır yani ilk eşleşme değiştirilir diğerleri değiştirilmez.

var fruits = 'apple pear orange';

fruits.sub(/\w+/, function(match){return match[0].capitalize() + ‘,’}, 2);

// ‘Apple, Pear, orange’

.succ

"ObjectRange" nesnesinin gereğine uygun olarak metnin son karakterini, aralığın bir sonraki elemanının gerektirdiği şekle getirir. Yani aralıktaki bir sonraki elemana çevirir.

'a'.succ();
// -> ‘b’

‘aaaa’.succ();

// ‘aaab’

.toArray

Verilen metni bir dizi değişken haline getirir. (harf harf bir diziye yerleştirir)

'hello world!'.toArray();

// [’h', ‘e’, ‘l’, ‘l’, ‘o’, ‘ ‘, ‘w’, ‘o’, ‘r’, ‘l’, ‘d’, ‘!’]

.toQueryParams

Sorgu cümleciği olarak verilen ifadeyi obje yönelimli kullanıma uygun hale (bir Hash nesnesi) getirir.

'tag=ruby on rails&app=Prototype'.toQueryParams();

// {tag: ‘ruby%20on%20rails’, ‘app’: ‘Prototype'’}

.truncate

Metni verilen karakter sayısı kadar kırpar. Eğer metin girilen karakter sayısından uzunsa sonuna standart olarak üç nokta (…) koyar. Bu son ek fonksiyona parametre ile gönderilerek özelleştirilebilir.

'Lorem ipsum dolor sit amet'.truncate(15, ' [devamı için tıklayınız...]');
// ‘’Lorem ipsum dol [devamı için tıklayınız…]’

.underscore

Metin içindeki büyük harfleri altçizgi (_) ile değiştirir ve küçültür. (backgroundColor -> background_color)

.unescapeHTML

HTML etiketlerini kırpar ve kodlanmış özel karakterleri (entities) normale çevirir.

'<h1>Pride &amp; Prejudice</h1>'.unescapeHTML()
// ‘Pride & Prejudice’

Sayfalar: 1 2 3

Toplamda 6146 kez okunmuş.
Şu an 1 kişi okuyor.
En fazla 7 kişi aynı anda okumuş.
Bugün 0 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ı