Javascript'te bir dizi listesi var mı?


93

Bir diziye eklemek istediğim bir sürü şey var ve dizinin boyutunun önceden ne olacağını bilmiyorum. JavaScript'teki c # dizi listesine benzer bir şey yapıp myArray.Add(object);üzerinde tekrar tekrar yapabilir miyim?

Yanıtlar:


146

sadece array.push () kullanın;

var array = [];


array.push(value);

Bu, ona başka bir öğe ekleyecektir.

Birini çıkarmak için kullanın array.pop();

JavaScript dizilerine bağlantı: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array


Bağlantı artık mevcut değil.
sabsab

Bir diziye istediğiniz kadar veri ekleyebilirsiniz - arr.push (element1 [, ... [, elementN]]) - developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/…
CarlosZ

52

Javascript'te ArrayList yoktur.

Bununla birlikte , bir "DiziListesi" ile benzer işlevselliğe sahip ArrayECMA 5.1 vardır. Bu cevabın çoğu, kelimesi kelimesine Ecma-262 Edition 5.1, The ECMAScript Language Specification'ın HTML oluşturmasından alınmıştır .

Tanımlanmış diziler aşağıdaki yöntemlere sahiptir:

  • .toString ( )
  • .toLocaleString ( )
  • .concat ( [ item1 [ , item2 [ , … ] ] ] )
    Concat yöntemi sıfır veya daha fazla argüman item1, item2, vb. İle çağrıldığında, nesnenin dizi öğelerini ve ardından her argümanın dizi öğelerini içeren bir dizi döndürür.
  • .join (separator)
    Dizinin öğeleri, Dizelere dönüştürülür ve bu Dizeler daha sonra, ayırıcının oluşumlarıyla ayrılarak birleştirilir. Ayırıcı yoksa, ayırıcı olarak tek bir virgül kullanılır.
  • .pop ( )
    Dizinin son elemanı diziden çıkarılır ve döndürülür.
  • .push ( [ item1 [ , item2 [ , … ] ] ] )
    Bağımsız değişkenler, göründükleri sırayla dizinin sonuna eklenir. Dizinin yeni uzunluğu, çağrının sonucu olarak döndürülür. "
  • .reverse ( )
    Dizinin elemanları, sıralarını tersine çevirecek şekilde yeniden düzenlenir. Nesne, çağrının sonucu olarak döndürülür.
  • .shift ( )
    Dizinin ilk öğesi diziden kaldırılır ve döndürülür. "
  • .slice (start, end)
    Dilim yöntemi, başlangıç ​​ve bitiş olmak üzere iki bağımsız değişken alır ve öğe başlangıcından öğe sonuna kadar olan ancak dahil olmayan dizinin öğelerini içeren bir dizi döndürür (veya bitiş tanımlanmamışsa dizinin sonuna kadar).
  • .sort (comparefn)
    Bu dizinin elemanları sıralanır. Sıralama sabit olmak zorunda değildir (yani, eşitliği karşılaştıran öğeler mutlaka orijinal sıralarında kalmazlar). Comparefn tanımsız değilse, x ve y iki bağımsız değişkeni kabul eden ve x <y ise negatif bir değer, x = y ise sıfır veya x> y ise pozitif bir değer döndüren bir fonksiyon olmalıdır.
  • .splice (start, deleteCount [ , item1 [ , item2 [ , … ] ] ] )
    Splice yöntemi iki veya daha fazla argüman start, deleteCount ve (isteğe bağlı olarak) item1, item2, vb. İle çağrıldığında, dizi indeksi başlangıcında başlayan dizinin deleteCount öğeleri item1, item2 vb. Argümanlar ile değiştirilir. Bir Array nesnesi silinen öğeleri içeren (varsa) döndürülür.
  • .unshift ( [ item1 [ , item2 [ , … ] ] ] )
    Argümanlar dizinin başına eklenir, öyle ki dizi içindeki sıraları bağımsız değişken listesinde göründükleri sırayla aynıdır.
  • .indexOf ( searchElement [ , fromIndex ] )
    indexOf, searchElement öğesini dahili Katı Eşitlik Karşılaştırma Algoritmasını (11.9.6) kullanarak artan sırada dizinin öğeleriyle karşılaştırır ve bir veya daha fazla konumda bulunursa, bu tür ilk konumun dizinini döndürür; aksi takdirde -1 döndürülür.
  • .lastIndexOf ( searchElement [ , fromIndex ] )
    lastIndexOf, searchElement öğesini dahili Katı Eşitlik Karşılaştırma Algoritmasını (11.9.6) kullanarak azalan sırada dizinin öğeleriyle karşılaştırır ve bir veya daha fazla konumda bulunursa, bu tür son konumun dizinini döndürür; aksi takdirde -1 döndürülür.
  • .every ( callbackfn [ , thisArg ] )
    callbackfn, üç bağımsız değişkeni kabul eden ve doğru veya yanlış Boole değerine zorlanabilen bir değer döndüren bir işlev olmalıdır. her, callbackfn'in false döndürdüğü bir yeri bulana kadar, dizide bulunan her öğe için artan sırayla callbackfn'yi bir kez çağırır. Böyle bir öğe bulunursa, her biri hemen yanlış döndürür. Aksi takdirde, callbackfn tüm öğeler için true döndürürse, her biri true değerini döndürür.
  • .some ( callbackfn [ , thisArg ] )
    callbackfn, üç bağımsız değişkeni kabul eden ve doğru veya yanlış Boole değerine zorlanabilen bir değer döndüren bir işlev olmalıdır. bazıları, callbackfn'in true döndürdüğü bir yeri bulana kadar, dizide bulunan her öğe için artan sırada callbackfn'yi bir kez çağırır. Böyle bir öğe bulunursa, bazıları hemen doğru döndürür. Aksi takdirde bazıları yanlış döndürür.
  • .forEach ( callbackfn [ , thisArg ] )
    callbackfn, üç bağımsız değişkeni kabul eden bir işlev olmalıdır. forEach, dizide bulunan her öğe için artan sırada callbackfn'yi bir kez çağırır.
  • .map ( callbackfn [ , thisArg ] )
    callbackfn, üç bağımsız değişkeni kabul eden bir işlev olmalıdır. map, dizideki her öğe için artan sırada callbackfn'yi bir kez çağırır ve sonuçlardan yeni bir Dizi oluşturur.
  • .filter ( callbackfn [ , thisArg ] )
    callbackfn, üç bağımsız değişkeni kabul eden ve doğru veya yanlış Boole değerine zorlanabilen bir değer döndüren bir işlev olmalıdır. filter, dizideki her öğe için artan sırada callbackfn'yi bir kez çağırır ve callbackfn'nin true döndürdüğü tüm değerlerin yeni bir dizisini oluşturur.
  • .reduce ( callbackfn [ , initialValue ] )
    callbackfn, dört bağımsız değişken alan bir işlev olmalıdır. azaltma, dizide bulunan her öğe için artan sırada bir işlev olarak geri aramayı çağırır.
  • .reduceRight ( callbackfn [ , initialValue ] )
    callbackfn, dört bağımsız değişken alan bir işlev olmalıdır. azaltmaRight, dizide bulunan her öğe için azalan sırada bir işlev olarak geri aramayı çağırır.

ve ayrıca uzunluk özelliği .


23

Javascript ile tüm diziler esnektir. Aşağıdakilere benzer bir şey yapabilirsiniz:

var myArray = [];

myArray.push(object);
myArray.push(anotherObject);
// ...

Seni gerçekten tanımasam bile seni seviyorum.
sabsab

14

Diziler JS'de oldukça esnektir, şunları yapabilirsiniz:

var myArray = new Array();
myArray.push("string 1");
myArray.push("string 2");

Yine de belirli bir öğeyi kolayca kaldıramazsınız
Jacob Sánchez

Elbette şunları yapabilirsiniz: array.splice(index, 1)öğesindeki öğeyi kaldırır index.
Eylül'de

7

İtmeye bile ihtiyacın yok, böyle bir şey yapabilirsin -

var A=[10,20,30,40];

A[A.length]=50;

5

javascript dinamik diziler kullanır, boyutu önceden bildirmeye gerek yoktur

Dizileri istediğiniz kadar itebilir ve kaydırabilirsiniz, javascript sizin için ayırma ve işleri halleder


3

Java betiğinde diziyi aşağıdaki gibi bildirirsiniz:

var array=[];
array.push();

ve dizi listesi veya nesne veya dizi için json kullanmanız gerekir; ve aşağıdaki kodu kullanarak json kullanarak seri hale getirin:

 var serializedMyObj = JSON.stringify(myObj);

Hey Ek bilgi sağladığınız için teşekkürler. Yani Json serileştirme gerçekten yardımcı oldu
Prakash

1

Javascript dizi push()yöntemini kullanın , verilen nesneyi dizinin sonuna ekler. JS Dizileri oldukça esnektir, bir dizide uzunluğunu önceden belirtmeden istediğiniz kadar nesneyi itebilirsiniz. Ayrıca, farklı türdeki nesneler aynı Dizi'ye gönderilebilir.


0

Sadece kullan array.push(something);. Javascript dizileri bu bakımdan ArrayLists gibidir - esnek uzunlukları varmış gibi ele alınabilir (java dizilerinin aksine).


0

Bunu dene, belki yardımcı olabilir, istediğini yap:

ListArray

var listArray = new ListArray();
let element = {name: 'Edy', age: 27, country: "Brazil"};
let element2 = {name: 'Marcus', age: 27, country: "Brazil"};
listArray.push(element);
listArray.push(element2);

console.log(listArray.array)
<script src="https://marcusvi200.github.io/list-array/script/ListArray.js"></script>

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.