JavaKomut Dizisi Yöntemleri: Örnekle Oluşturma
⚡ Akıllı Özet
JavaKomut dosyası dizi yöntemleri, geliştiricilerin sıralı değer koleksiyonlarını tek bir nesne aracılığıyla depolamasına, almasına ve dönüştürmesine olanak tanır. Bu makale, dizi oluşturmayı, indeks erişimini, yerleşik yöntem ailelerini, yineleme tekniklerini, çok boyutlu yapıları ve beklenen çıktıyı içeren çalıştırılabilir bir örneği açıklamaktadır.

Dizi (Array) nedir? JavaSenaryo?
Dizi, saklanabilen bir nesnedir ürün koleksiyonuDiziler, aynı türden büyük miktarda veriyi saklamanız gerektiğinde gerçekten kullanışlı hale gelir. Örneğin, 500 çalışanın bilgilerini saklamak istediğinizi varsayalım. Değişkenler kullanıyorsanız, 500 değişken oluşturmanız gerekecektir; oysa aynı işlemi tek bir diziyle yapabilirsiniz. Bir dizideki öğelere, dizinin kimliğine başvurarak erişebilirsiniz. dizin numarasıVe bir dizinin ilk elemanının indeksi sıfırdır.
Kesin tipli dillerdeki dizilerin aksine, bir JavaKomut dosyası dizisi dinamiktir. Yeni bir öğe atandığında uzunluğu otomatik olarak artar ve tek bir dizi aynı anda dizeler, sayılar, mantıksal değerler, nesneler ve hatta diğer dizileri içerebilir. Bu esneklik, dizileri hem tarayıcı komut dosyalarında hem de sunucu tarafı kodlarında liste verileri için varsayılan kapsayıcı haline getirir.
Bir dizi nasıl oluşturulur? JavaSenaryo
İçinde bir dizi oluşturabilirsiniz JavaSenaryo aşağıda verildiği gibi.
var students = ["John", "Ann", "Kevin"];
Burada dizinizi oluşturulduğu anda “John”, “Ann” ve “Kevin” değerleriyle başlatıyorsunuz. “John”, “Ann” ve “Kevin”in indeksi sırasıyla 0, 1 ve 2'dir. Students dizisine daha fazla öğe eklemek istiyorsanız bunu şu şekilde yapabilirsiniz:
students[3] = "Emma"; students[4] = "Rose";
Dizi oluşturma işlemini Array yapıcı fonksiyonunu kullanarak da şu şekilde gerçekleştirebilirsiniz:
var students = new Array("John", "Ann", "Kevin");
OR
var students = new Array(); students[0] = "John"; students[1] = "Ann"; students[2] = "Kevin";
Dizi Elemanlarına Nasıl Erişilir ve Bunlar Nasıl Değiştirilir?
Her eleman numaralandırılmış bir konumda yer alır. Köşeli parantez gösterimi, indeks geçerli uzunluğa eşit olduğunda bir değeri okur, yeni bir değer atar veya yeni bir giriş ekler.
let students = ["John", "Ann", "Kevin"]; console.log(students[0]); // John - first element console.log(students[students.length - 1]); // Kevin - last element students[1] = "Anna"; // replace an existing value students[3] = "Emma"; // append a new value console.log(students); // ["John", "Anna", "Kevin", "Emma"] console.log(students.length); // 4 console.log(students[9]); // undefined - index does not exist
⚠️Uyarı: Geçerli uzunluğun çok ötesindeki bir indekse değer atamak, boş yuvalarla dolu seyrek bir dizi oluşturur. Kullanın push() Dizinin yoğunluğunu ve tahmin edilebilirliğini korumak için atlamalı indeks yerine doğrudan indeks kullanılır.
JavaKomut Dizisi Yöntemleri
Array nesnesi, geliştiricilerin dizileri kolay ve verimli bir şekilde işlemesine yardımcı olan birçok özellik ve yönteme sahiptir. Diziadı.özelliğini belirterek bir özelliğin değerini ve diziadı.method()'u belirterek bir yöntemin çıktısını alabilirsiniz.
- uzunluk özelliği -> Bir dizideki eleman sayısını bilmek istiyorsanız uzunluk özelliğini kullanabilirsiniz.
- prototip özelliği –> Yeni özellikler ve yöntemler eklemek istiyorsanız prototip özelliğini kullanabilirsiniz.
- ters yöntem -> Ters yöntem kullanarak bir dizideki öğelerin sırasını tersine çevirebilirsiniz.
- sıralama yöntemi –> Bir dizideki öğeleri `sort` yöntemini kullanarak sıralayabilirsiniz.
- pop yöntemi -> Bir dizinin son öğesini pop yöntemini kullanarak kaldırabilirsiniz.
- kaydırma yöntemi –> Bir dizinin ilk öğesini shift yöntemiyle kaldırabilirsiniz.
- itme yöntemi –> Dizinin son öğesi olarak bir değer ekleyebilirsiniz.
Aşağıdaki referans tablosu, en sık kullanılan yöntemleri gruplandırarak, hangi yöntemlerin orijinal diziyi değiştirdiğini ve hangilerinin yeni bir değer döndürdüğünü bir bakışta görmenizi sağlar.
| Yöntem | Amaç | Geri dönüşler | Orijinal Diziyi Değiştirir |
|---|---|---|---|
| it() | Sonuna bir veya daha fazla öğe ekleyin. | Yeni uzunluk | Evet |
| pop() | Son öğeyi kaldırın | Kaldırılan öğe | Evet |
| kaydırmayı kaldır() | Öne bir veya daha fazla öğe ekleyin | Yeni uzunluk | Evet |
| vardiya() | İlk öğeyi kaldırın | Kaldırılan öğe | Evet |
| ekleme() | Öğeleri herhangi bir konuma ekleyin veya silin. | Kaldırılan öğelerin dizisi | Evet |
| çeşit() | Ürünleri sipariş edin | Sıralanmış dizi | Evet |
| tersine çevirmek() | Öğelerin sırasını tersine çevirin. | Ters çevrilmiş dizi | Evet |
| dilim() | Dizinin bir bölümünü kopyala | Yeni dizi | Yok hayır |
| birleştirme() | İki veya daha fazla diziyi birleştirin | Yeni dizi | Yok hayır |
| katılmak() | Öğeleri bir dize halinde birleştirin. | dizi | Yok hayır |
| indeksi() | Bir değerin konumunu bulun. | İndeks veya -1 | Yok hayır |
| içerir() | Bir değerin var olup olmadığını test edin. | doğru ya da yanlış | Yok hayır |
Öğe Ekleme ve Kaldırma
let fruits = ["apple", "banana"]; fruits.push("cherry"); // ["apple", "banana", "cherry"] fruits.unshift("mango"); // ["mango", "apple", "banana", "cherry"] fruits.pop(); // ["mango", "apple", "banana"] fruits.shift(); // ["apple", "banana"] // splice(startIndex, deleteCount, ...itemsToInsert) fruits.splice(1, 0, "kiwi"); // ["apple", "kiwi", "banana"] console.log(fruits);
Arama, Kopyalama ve Birleştirme
let colors = ["red", "green", "blue", "green"]; console.log(colors.indexOf("green")); // 1 - first match only console.log(colors.lastIndexOf("green")); // 3 console.log(colors.includes("pink")); // false console.log(colors.slice(1, 3)); // ["green", "blue"] console.log(colors.join(" | ")); // red | green | blue | green console.log(colors.concat(["black"])); // new array, colors unchanged
Yineleme Yöntemleri: forEach, map, filter ve reduce
Modern JavaKomut dosyası, işlemin amacı doğrudan yöntem adında belirtildiği için, manuel indeks döngülerine kıyasla geri çağırma tabanlı yöntemleri tercih eder.
const scores = [45, 72, 88, 31, 95]; scores.forEach(s => console.log(s)); // prints each score const doubled = scores.map(s => s * 2); // [90, 144, 176, 62, 190] const passed = scores.filter(s => s >= 50); // [72, 88, 95] const total = scores.reduce((sum, s) => sum + s, 0); // 331 const first = scores.find(s => s > 80); // 88 console.log(doubled, passed, total, first);
💡 İpucu: Varsayılan sort() Öğeleri dizelere dönüştürür, bu nedenle [10, 9, 100].sort() İade [10, 100, 9].Şu gibi bir karşılaştırıcı geçirin: sort((a, b) => a - b) Sayıları doğru şekilde sıralamak.
JavaKaynak Kodlu Komut Dosyası Dizisi Örneği Code
Aşağıdaki kod, bir öğrenci dizisi oluşturur, prototip özelliği aracılığıyla özel bir görüntüleme yöntemi ekler ve ardından sırasıyla uzunluk, sıralama, ters çevirme, çıkarma ve ekleme işlemlerini gösterir. Bunu kendiniz deneyin:
<html>
<head>
<title>Arrays!!!</title>
<script type="text/javascript">
var students = new Array("John", "Ann", "Aaron", "Edwin", "Elizabeth");
Array.prototype.displayItems=function(){
for (i=0;i<this.length;i++){
document.write(this[i] + "<br />");
}
}
document.write("students array<br />");
students.displayItems();
document.write("<br />The number of items in students array is " + students.length + "<br />");
document.write("<br />The SORTED students array<br />");
students.sort();
students.displayItems();
document.write("<br />The REVERSED students array<br />");
students.reverse();
students.displayItems();
document.write("<br />THE students array after REMOVING the LAST item<br />");
students.pop();
students.displayItems();
document.write("<br />THE students array after PUSH<br />");
students.push("New Stuff");
students.displayItems();
</script>
</head>
<body>
</body>
</html>
Beklenen çıktı:
students array John Ann Aaron Edwin Elizabeth The number of items in students array is 5 The SORTED students array Aaron Ann Edwin Elizabeth John The REVERSED students array John Elizabeth Edwin Ann Aaron THE students array after REMOVING the LAST item John Elizabeth Edwin Ann THE students array after PUSH John Elizabeth Edwin Ann New Stuff
Dikkat edin, sıralama işlemi "Aaron"ı "Ann"den önce yerleştiriyor çünkü büyük ve küçük harfler karakter kodlarına göre karşılaştırılıyor. Ayrıca, pop işleminin "Aaron"ı ters çevrilmiş diziden kaldırdığını da fark edin; bu da hem sıralama hem de ters çevirme işlemlerinin orijinal diziyi yerinde değiştirdiğini doğrular.
Bir Döngü Nasıl Oluşturulur? JavaKomut Dosyası Dizisi
Dört tuvaletping Çeşitli stiller mevcuttur ve her biri farklı bir duruma uygundur. Klasik for döngüsü dizin üzerinde tam kontrol sağlar, for…of değerleri doğrudan okur, forEach niyeti açıkça ifade eder ve for…in nesne özelliklerine ayrılmalıdır.
const cities = ["Paris", "Tokyo", "Cairo"]; // 1. Classic for loop - index is available for (let i = 0; i < cities.length; i++) { console.log(i + ": " + cities[i]); } // 2. for...of loop - value is available for (const city of cities) { console.log(city); } // 3. forEach with index parameter cities.forEach((city, index) => console.log(index, city)); // 4. entries() when both index and value are needed for (const [index, city] of cities.entries()) { console.log(index, city); }
While ve do…while gibi döngü sözdizimine ilişkin daha ayrıntılı bir inceleme, makalede yer almaktadır. Döngüler nasıl kullanılır? JavaSenaryo.
Çok Boyutlu Dizilerde JavaSenaryo
JavaKomut dosyasında özel bir matris türü bulunmamaktadır. Bir ızgara, elemanları kendileri de dizi olan bir diziden ibarettir ve tek bir hücreye ulaşmak için iki indeks ifadesi kullanılır.
const matrix = [ [1, 2, 3], [4, 5, 6], [7, 8, 9] ]; console.log(matrix[1][2]); // 6 - row index 1, column index 2 for (const row of matrix) { console.log(row.join(" ")); } // flatten a nested array into a single level console.log(matrix.flat()); // [1, 2, 3, 4, 5, 6, 7, 8, 9]
Çıktı:
6 1 2 3 4 5 6 7 8 9 [1, 2, 3, 4, 5, 6, 7, 8, 9]
Diziler, form doğrulamasından veri oluşturmaya kadar neredeyse her pratik betikte karşımıza çıkar. Devam edelim... pratik JavaKomut dosyası kod örnekleri, gözden geçirmek JavaKomut dosyası dizeleri metin işleme için ve hakkında bilgi edinin. dahili ve harici JavaSenaryo Bu komut dosyalarının bir sayfada nereye ait olduğuna karar vermek için. Dizi içerikleri üzerinde statik tür kontrolü isteyen geliştiriciler bir sonraki adıma geçebilirler. TypeScript öğretici.
