--- title: Array.prototype.push() slug: Web/JavaScript/Reference/Global_Objects/Array/push tags: - Dizi - JavaScript - Metot - Prototype - Referans translation_of: Web/JavaScript/Reference/Global_Objects/Array/push ---
{{JSRef}}

push() metotu dizinin sonuna bir yada daha fazla element ekler ve dizinin yeni uzunluğunu geri döndürür.

Söz dizimi

arr.push(element1, ..., elementN)

Parametreler

elementN
Dizinin sonuna eklenecek elementler.

Geri döndürür

Nesnenin yeni {{jsxref("Array.length", "length")}} özelliğini metotun çağrılması üzerine geri döndürür.

Tanım

push metotu değerleri bir diziye ekler.

push kasıtlı olarak genelleyicidir. Bu metot benzeyen nesnelerin dizilerinde {{jsxref("Function.call", "call()")}} veya {{jsxref("Function.apply", "apply()")}} ile kullanılabilir. push metotu verilen değerleri eklemeye nereden başlayacağını tespit etmek için length özelliğine dayanır. Eğer length özelliği bir sayıya dönüştürülemezse indeks 0 kabul edilir. Bu durum length özelliğinin bulunmama ihtimalini de kapsar, bu durumda length ayrıca oluşturulacaktır.

Sadece yerel dizi benzeri nesneler {{jsxref("Global_Objects/String", "strings", "", 1)}} olduğu halde stringlerin değişmez olduğu gibi bu metotun uygulamalarına uygun değildirler.

Örnekler

Bir diziye element ekleme

Aşağıda bulunan kod iki elementi bulunan sports dizisini oluşturuyor, daha sonra iki diziye iki element daha ekliyor. total değişkeni dizinin yeni uzunluğunu tutuyor.

var sports = ['soccer', 'baseball'];
var total = sports.push('football', 'swimming');

console.log(sports); // ['soccer', 'baseball', 'football', 'swimming']
console.log(total);  // 4

İki diziyi birleştirme

Bu örnek ikinci bir diziden bütün elemanları eklemek için {{jsxref("Function.apply", "apply()")}} kullanıyor.

var vegetables = ['parsnip', 'potato'];
var moreVegs = ['celery', 'beetroot'];

// İkinci diziyi birinciyle birleştir
// Şuna eşdeğer, vegetables.push('celery', 'beetroot');
Array.prototype.push.apply(vegetables, moreVegs);

console.log(vegetables); // ['parsnip', 'potato', 'celery', 'beetroot']

Şartnameler

Şartname Durum Yorum
{{SpecName('ES3')}} {{Spec2('ES3')}} İlk tanım. JavaScript 1.2'de uygulandı.
{{SpecName('ES5.1', '#sec-15.4.4.7', 'Array.prototype.push')}} {{Spec2('ES5.1')}}  
{{SpecName('ES6', '#sec-array.prototype.push', 'Array.prototype.push')}} {{Spec2('ES6')}}  

Tarayıcı uyumu

{{CompatibilityTable}}
Özellik Chrome Firefox (Gecko) Internet Explorer Opera Safari
Basit destek {{CompatChrome("1.0")}} {{CompatGeckoDesktop("1.7")}} {{CompatIE("5.5")}} {{CompatVersionUnknown}} {{CompatVersionUnknown}}
Özellik Android Android için Chrome Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basit destek {{CompatVersionUnknown}} {{CompatVersionUnknown}} {{CompatVersionUnknown}} {{CompatVersionUnknown}} {{CompatVersionUnknown}} {{CompatVersionUnknown}}

Ayrıca göz at