Bir çok dilde örneğine rastladığımız ve olmazsa olmaz bazı kolaylıklar bulunmaktadır. Bunlardan biri de dizi değişkenlerdir (arrays). Normal bir değişken ile dizi değişkeni karşılaştırmak için kutu örneğini kullanalım. Basit bir değişkeni sadece tek gözü bulunan bir kutuya benzetir isek dizi değişkeni bir çok gözü bölmesi bulunan bir kutu ile benzeştirmek doğru olur.Bazende verilerimizi dizi değişkenlerin bölmelerine doldurmak yerine yan yana getirip aralarına bir ayırıcı işaret ekleriz. Bu şekilde saklanan veri kümelerini daha sonra belirleyici işaretten keserek değişken bölmelerine aktaran fonksiyonlar bulunmaktadır.İleride kullanmak üzere yazacağımız fonksiyonlarda “parametre olarak elimize ulaşan verilerin nasıl bir düzende olduğunu bilemeyiz” düşüncesi hakim olursa, fonksiyonlar tek düzen bir yapıda olacaklardır. Mesela artık o fonksiyonun doğru çalışabilmesi için verileri bir ön işlemden geçirmek durumunda kalabiliriz. Ama bu fonksiyon mantığının tamamen zıttı bir durumdur. Fonksiyonlar zaten sık tekrar eden işlerimizi bir defa yazıp kullandırma amacı taşırken bir başka yerde yine tekrarlı işler yapmak akıl karı olmazdı.İşte bu makalede ön düzenleme işlemlerini de fonksiyonun içine alma rutinlerinden bahsedeceğim.dim normal,dizi(2)normal = “deneme1#deneme2#deneme3″dizi(0) = “deneme1″dizi(1) = “deneme2″dizi(2) = “deneme3″Function KacEleman(e,joker)if isArray(e) thenKacEleman = Ubound(e)elsearr = split(e,joker)KacEleman = Ubound(arr)end ifEnd FunctionWith Response.Write KacEleman(normal,”#”) ‘Sonuç olarak 3 rakamı dönecektir.Write KacEleman(dizi,””) ‘Sonuç olarak 3 rakamı dönecektirEnd With
Görüldüğü gibi bir adet sıradan tek boyutlu bir değişkenimiz ve içerisinde parçalanmaya müsait bir veri kümesi ve bir tane de bölmeleri veri ile doldurulmuş dizi değişkenimiz mevcut.Fonksiyonumuz hiç bir ön düzenleme gerektirmeksizin yolladığımız veri veya değişken kümelerinde kaçar eleman olduğunu bize döndürüyor.joker isimli parametre ise amacı daha esnek bir yapı sunmak olan fonksiyonumuza daha fazla esnek bir yapı kazandırıyor. Mesela bizim elimizde “#” işareti değil de “/” içeren bir URL olsa idi, fonksiyona parçalama işlemini “/” karakterine bakarak yapmasını söyleyebilecektik. Bunu bir parametre ile almadan yapsaydık fonksiyonumuz yine bir bakıma tek düzen bir yapıda kalacaktı..Konuyla ilgili olarak bakmak isteyebileceğiniz diğer yazılarım;Nesne Yönelimli Javascript UygulamalarıJSON Tekniği ve Javascript ile ilişkisi..ASP ile gruplandırma algoritmaları üzerinejavascript ile Sinema Tarzında Efekt YapalımJavaScript ile Animasyon Üretme Tekniğiasp’de mySQL İşlemlerini Otomatiğe Bağlayın!