
Javascript – Diziler ve Dizi Metdoları
Ağustos 29, 2022
Javascript – Window ve Frame Özellikleri
Ağustos 29, 2022Javascript - Tek Boyutlu Diziler
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Ömer Turak - Javascript - Code 27</title>
<link rel="stylesheet" href="../css/bootstrap.css">
<link rel="stylesheet" href="../css/bootstrap-theme.css">
</head>
<body>
<div class="container">
<div class="alert alert-success" role="alert">
<h4 class="alert-heading">Javascript Code Example 27 </h4> Javascript - One Dimensional Arrays <a href="../index.html">Back Home</a>
</div>
<script type="text/javascript">
// Tek Boyutlu Diziler (One Dimensional Arrays)
/*
* Tüm programlama dillerinde olduğu gibi JavaScript dilinde de dizi (array) yapısı son derecede önemli ve faydalı bir veri yapısıdır.
* Önce dizi yapısının tanımını vererek başlayacağız:
*
* Dizinin tanımı
*
* Dizi, bilgisayar belleğinde aynı isim altında genellikle aynı tipten çok sayıda veriyi bir arada saklayan veri yapısıdır.
* Aşağıda, x adlı bir dizinin mantıksal görünümü verilmiştir:
*
* X DİZİSİ ELEMANLARI :
*
* 4 2 7 22 11 3
* 0 1 2 3 4 5
*
* Dizinin bir adı ve dizi içersindeki bir elemanın dizinin kaçıncı elemanı olduğunu belirten bir indisi (subscript, index) mevcuttur.
* Örneğin yukarıdaki x adlı dizi için x[3] ifadesi bu dizinin 3 numaralı elemanını yani 22 değerini göstermektedir.
* Dizinin indisi JavaScript dilinde daima köşeli parantez ile belirlenir:
*
*
* X[3] (X --> DİZİ ADI - [3] --> DİZİNİN İNDİSİ)
*
* JavaScript dilinde bir dizinin ilk elemanının indisi daima 0'dır; son elemanın indisi ise diziye ayrılan yer sayısının 1 eksiğine eşittir.
* Yukarıdaki x dizisinin 6 elemanı vardır; ilk elemanının indisi 0 ve son elemanının indisi de 5'tir.
*
*
* */
//--------------------------------------------------------------------------------------------------------------
// JavaScript Programı İçinde Dizinin Bildirilmesi
/*
* Bir JavaScript programı içinde diziyi tanıtmak için new operatörünü kullanmak gerekir. JavaScript dili her diziyi
* Array sınıfından bir nesne olarak kabul eder. JavaScript'te bir nesne sınıfından bir nesne görünümü ya da kopyası (instance)
* elde etmek için kullanılan araç new operatörüdür. new operatörü diziye bellekte belirtilen sayıda yer ayırır yani dinamik
* bir bellek ayrılması işlemini gerçekleştirir.
*
* var x = new Array(6);
*
* Burada x isimli bir diziye bellekte 6 adet yer ayrılmıştır. Bellekte bu dizinin elemanları
*
* x[0], x[1], x[2], x[3], x[4], x[5]
*
* şeklinde yer alacaktır.
*
* Yukarıda dizi için sadece bildirimde bulunulmuş, yer ayrılmış fakat dizi elemanlarına değer atanmamıştır.
* Değer atanmadığı sürece dizinin elemanları tanımsızdır (undefined).
*
* Yukarıdaki bildirim aşağıdaki biçimde de yapılabilirdi:
*
* var x;
* x = new Array(6);
*
* Bir dizi için eleman sayısı belirtilmeden de bildirimde bulunulabilir:
*
* var x = new Array;
*
* Bu durumda hiçbir elemanı olmayan bir dizi tanımlanmıştır.
*
* */
//--------------------------------------------------------------------------------------------------------------
// Dizi İçin Ne Gereklidir?
/*
* Dizi yapısına aynı türden bir veri grubunu tümüyle bellekte saklı tutmanın gerekli olduğu uygulamalarda ihtiyaç duyulur.
* Örneğin verilerin sıralanması bir veri grubuna ait bazı istatistiksel bilgilerin hesaplanması (örn: standart sapma) gibi uygulamalar
* bu türde uygulamalardır.
*
* Aşağıda aynı işlemi gerçekleştiren iki farklı JavaScript uygulaması verilmiştir. Her iki uygulama, bilgisayara girilen
* 5 adet sayının toplamını bulmaktadır.
*
* */
// Dizi kullanmayan sürüm
var sayi,t,i;
t=0;
for(i=1;i<=5;i++)
{ sayi=parseInt(window.prompt("BİR SAYI GİRİNİZ..","0"));
t=t+sayi;
}
document.write("<H3>Toplam ="+t+"</H3>");
document.write("<H3>Sayı ="+sayi+"</H3>");
/*
* Uygulamayı çalıştırdığınızda sizden 5 adet sayı girmenizi isteyecektir. 1,2,3,4 ve 5 değerlerini girelim.
* Bu değerleri girdiğinizde 1'den 5'e kadar olan sayıları toplayıp ekrana yazacaktır ve sayi değişkeninde
* de en son girdiğimiz 5 değerini yazdıracaktır.
*
* */
// Dizi kullanılan sürüm
var sayi,t,i;
sayi=new Array(6);
t=0;
for(i=1;i<=5;i++)
{ sayi[i]=parseInt(window.prompt("BİR SAYI GİRİNİZ..","0"));
t=t+sayi[i];
}
document.write("<H3>Toplamı ="+t+"</H3>");
document.write("<H3>Sayı ="+sayi[3]+"</H3>");
/*
* Örnekte, dizi kullanmayan sürümde bilgi giriş ortamından girilecek olan sayılar (örn: sırası ile 1,2,3,4,5)
* toplanacak ve sonuç t=15 olarak hesaplanıp yazdırılacaktır. İkinci sürümde aynı veriler girildiği durumda,
* yine t=15 şeklinde bu sayıların toplamı yazdırılacaktır.
*
* Bu iki uygulama arasında çok önemli bir fark mevcut: Dizi kullanmayan sürümde, girilen her sayı, sayi adlı değişkende
* saklanacak ve her seferinde o andaki sayi değişkeninin değeri o ana kadar olan sayılar toplamını saklayan t değişkenine
* eklenecektir. Her yeni sayı girildiğinde, sayi değişkeninde saklı bulunan bir önceki sayı değeri silinecektir. Bu durumda
* uygulamanın sonunda, sayi değişkeninde, en son girilen değer olan 5 değeri saklanacaktır. write metodu ile yazdırılan sayı da bu olacaktır.
*
* Dizi kullanmayan sürümde uygulamanın sonunda, "girdiğimiz 3. Sayı neydi?" diye merak eder ve bunu yazdırmak istersek
* bunun olanaksız olduğunu görürüz. Oysa, ikinci sürümde dizi kullanıldığı için, her sayı, sayi dizisinin bir elemanı
* olarak sonuna kadar bellekte saklanır. Bu durumda uygulamanın sonunda,
* */
// document.write("<h3> sayı =" + sayi[3] + "</h3>");
// deyimi ile 3. sayıyı yazdırmamız mümkündür. Yukarıdaki örnekte sayi dizisine 6 yer ayrılmıştı. Bu yerler sırası ile,
// Sayi[0], Sayi[1], Sayi[2], Sayi[3], Sayi[4], Sayi[5],
</script>
</div>
</body>
</html>