valiDate – JavaScript ile Tarih Doğrulama

Uzun bir aradan sonra tekrar merhaba. Yılbaşında bahsettiğim sürpriz yazar henüz ortalarda yok. Aldığım duyumlara göre ilk yazısı hazırmış, umarım yakında burada görürüz.

Ben şimdi size valiDate’den bahsedeyim. Çalışırken javascript ile tarih doğrulaması yapma ihtiyacı doğdu. Kullanıcının gün, ay ve yıl kutularından seçtiği değerler geçerli bir tarih oluşturuyor mu test etmem gerekiyordu. Önce biraz internette araştırdım ve şurada ihtiyacımı az çok karşılayacak ufak bir betik buldum. Biraz sadeleştirme ve biraz özelleştirme ile projemde (ve gelecekte) kullanmak üzere aşağıdaki ufak fonksiyonu yazdım. Gelecekteki çalışmalarıma referans olması ve ihtiyacı olanların kullanması için buraya da ekliyorum.

function valiDate(d, m, y) {
var o = new Date(y, m - 1, d);
return o.getDate() == d && o.getMonth() + 1 == m && o.getFullYear() == y;
}

JavaScript için queryString fonksiyonu

Bugün ofisteki bir arkadaşıma lazım oldu. Ben de şöyle bir şey yazdım.

 function queryString() {
	var qs = location.search.substring(1,location.search.length).replace(/(%20|\+)/g," ");
	if(arguments.length == 0 || qs == "") return qs; else qs = "&" + qs + "&";
	return qs.substring(qs.indexOf("=", qs.indexOf("&" + arguments[0] + "=") + 1) + 1, qs.indexOf("&", qs.indexOf("&" + arguments[0] + "=") + 1));
}

Örnek Kullanım:

// http://www.site.com/index.php?str1=Merhaba+Dunya&str2=Test
// Şeklindeki bir adresten str1 ya da str2 bölümünü almak için
var str1 = queryString('str1');
var str2 = queryString('str2');
// Adresteki QueryString'in tamamını almak için
var qStr = queryString();

Google’da JavaScript ve QueryString kelimelerini arattığınızda da bir çok sonuç karşınıza çıkıyor. Problemin çözümü için bir çok farklı yol var. Temel olarak Regular Expressions kullanılarak oluşturulmuş bu fonksiyon ya da Split kullanılarak hazırlanmış bu fonksiyon gibi bir çok örneğe ulaşabilirsiniz.

Protoculous – Prototype + Script.aculo.us, hem de sıkıştırılmış

Her ne kadar son zamanlarda jQuery‘ye doğru oldukça meyil almış olsam da henüz jQuery’ye geçirmediğim Script.aculo.us kullanarak hazırladığım çalışmalarım var.

Script.aculo.us Samplr‘daki örnekleri incelerken sayfadaki Extra Tip ibaresi ilgimi çekti. İlgili siteye girip baktığımda bir de ne göreyim. Sen git Prototype‘ı ve Script.aculo.us‘u birleştir, bir de üstüne basıp sıkıştır, 54,6 KB’lık Protoculous ortaya çıksın.

Şu an 1.0.2 sürümüne ulaşmış olan Protoculous, Prototype 1.5.1 ve Script.aculo.us 1.7.1 Beta 3 sürümlerini içinde bulunduruyor ve daha önce de dediğim gibi sadece 54,6 KB.

JavaScript – parseInt() başınızı ağrıtmasın

JavaScript parseInt() fonksiyonunu nasıl bilirdiniz? Parametre olarak aldığı değerden bir tam sayı ortaya çıkartmaya çalışan güzide bir JavaScript fonksiyonu olan parseInt() geçen gün beni hayretler içerisinde bıraktı. Buyrun başıma geleni kendiniz görün. (Firebug kullananlar direkt console’da kodları çalıştırabilirler.)

parseInt('06');
// 6
parseInt('07');
// 7
parseInt('08');
// 0
parseInt('09');
// 0

Okumaya devam et JavaScript – parseInt() başınızı ağrıtmasın