--- title: Array.prototype.shift() slug: Web/JavaScript/Reference/Global_Objects/Array/shift tags: - Dizi - JavaScript - Prototype - metod translation_of: Web/JavaScript/Reference/Global_Objects/Array/shift ---
shift()
metodu bir dizinin ilk elementini diziden kaldırır ve kaldırılmış bu elementi geri döndürür. Bu metod dizinin boyunu değiştirir.
Bu wtkileşimli örneğin kaynağı bir GitHub deposunda saklanmaktadır.Eğer bu etkileşimli örnekler projesine katkıda bulunmak isterseniz, lütfen https://github.com/mdn/interactive-examples klonlayın ve bize bir "pull request" (çekme talebi) gönderin.
arr.shift()
Diziden kaldırılan element; eğer dizi boş ise de {{jsxref("undefined")}} değerini döndürür.
shift
metodu sıfırıncı indeksteki elementi kaldırır ve ardışık indeksleri aşağı düşürür, daha sonra kaldırılan değeri geri döndürür. Eğer metod uygulandığında {{jsxref("Array.length", "length")}} değeri 0 ise, {{jsxref("undefined")}} geri döndürür.
shift
özellikle geniş kapsamlıdır; bu metod {{jsxref("Function.call", "called", "", 1)}} veya {{jsxref("Function.apply", "applied", "", 1)}} dizilere benzeyen nesnelere de uygulanabilir. Ardışık bir serinin sonuncusu özelliği olan, sıfır-temelli, sayısal özellikleri olan ancak length
özelliği bulundurmayan nesneler, anlamli bir davranış göstermeyebilirler.
Aşağıdaki kod myFish
dizisinin ilk elementini kaldırmadan önceki ve kaldırdıktan sonraki halini göstermektedir. Aynı zamanda kaldırılan elementi de gösterir:
var myFish = ['angel', 'clown', 'mandarin', 'surgeon']; console.log('myFish öncesinde:', JSON.stringify(myFish)); // myFish öncesinde: ['angel', 'clown', 'mandarin', 'surgeon'] var shifted = myFish.shift(); console.log('myFish sonrasında:', myFish); // myFish sonrasında: ['clown', 'mandarin', 'surgeon'] console.log('Bu element kaldırıldı:', shifted); // Bu element kaldırıldı: angel
shift metodu sıklıkla while döngüsü içerisindeki şartlarda kullanılır . Takip eden örnekte her döngü dizi boşalana kadar bir sonraki elementi diziden kaldıracaktır:
var isimler = ["Andrew", "Edward", "Paul", "Chris" ,"John"]; while( (i = isimler.shift()) !== undefined ) { console.log(i); } // Andrew, Edward, Paul, Chris, John
Özellik | Durum | Açıklama |
---|---|---|
{{SpecName('ES3')}} | {{Spec2('ES3')}} | İlk tanımlama. JavaScript 1.2. de uygulandı. |
{{SpecName('ES5.1', '#sec-15.4.4.9', 'Array.prototype.shift')}} | {{Spec2('ES5.1')}} | |
{{SpecName('ES6', '#sec-array.prototype.shift', 'Array.prototype.shift')}} | {{Spec2('ES6')}} | |
{{SpecName('ESDraft', '#sec-array.prototype.shift', 'Array.prototype.shift')}} | {{Spec2('ESDraft')}} |
{{Compat("javascript.builtins.Array.shift")}}