Bu, "index" konumundaki bir değerin var olup olmadığını test etmek için işe yarayacak mı, yoksa daha iyi bir yol var mı?
if(arrayName[index]==""){
// do stuff
}
JavaScript'teki tüm diziler, array[0]
ile başlayıp array[array.length - 1]
'e kadar array.length
öğeleri içerir. Tanım olarak, i
indisli bir dizi elemanının, i
0
ile dizi.uzunluk - 1
arasında ise dizinin bir parçası olduğu söylenir.
Yani, JavaScript dizileri doğrusaldır, sıfırdan başlar ve maksimuma gider ve diziler belirli değerleri veya aralıkları diziden çıkarmak için bir mekanizmaya sahip değildir. Belirli bir konum indeksinde (indeks 0 veya pozitif bir tamsayı olduğunda) bir değerin var olup olmadığını öğrenmek için, kelimenin tam anlamıyla sadece
if (index < array.length) {
// do stuff
}
Bununla birlikte, bazı dizi değerlerinin null, undefined
, NaN
, Infinity
, 0 veya bir dizi farklı değer olması * mümkündür. Örneğin, array.length
özelliğini artırarak dizi değerleri eklerseniz, yeni değerler undefined
olacaktır.
Verilen bir değerin anlamlı bir şey olup olmadığını veya tanımlanıp tanımlanmadığını belirlemek için. Yani, not undefined
veya null
:
if (typeof array[index] !== 'undefined') {
veya
if (typeof array[index] !== 'undefined' && array[index] !== null) {
İlginç bir şekilde, JavaScript'in karşılaştırma kuralları nedeniyle, son örneğim bu şekilde optimize edilebilir:
if (array[index] != null) {
// The == and != operators consider null equal to only null or undefined
}