配列のあるインデックスに値が存在するかどうかをJavaScriptで確認するには?

これは、位置"index"に値が存在するかどうかをテストするために機能するでしょうか、それとも他に良い方法があるでしょうか。

if(arrayName[index]==""){
     // do stuff
}
ソリューション

JavaScriptのすべての配列は、array.length個の要素を持ち、array[0]からarray[array.length - 1]までの範囲である。 定義によれば、添字が i の配列要素は、 i0 から array.length - 1 までの範囲にあれば、その配列の一部であるとされます。

つまり、JavaScriptの配列は0から始まって最大までの直線的なものであり、配列には特定の値や範囲を配列から除外する仕組みはありません。与えられた位置のインデックス(インデックスは0または正の整数)に値が存在するかどうかを調べるには、文字通り次のように使用します。

if (index < array.length) {
  // do stuff
}

しかし、配列の値の中には、NULL、undefinedNaNInfinity、0など、さまざまな値が含まれている可能性があります。 例えば、array.lengthプロパティを増やして配列の値を追加した場合、新しい値はすべてundefinedになります。

与えられた値が意味のあるものであるかどうか、あるいは定義されたものであるかどうかを判断します。 つまり、undefined`ではない、またはnullです。

if (typeof array[index] !== 'undefined') {

または

if (typeof array[index] !== 'undefined' && array[index] !== null) {

面白いことに、JavaScriptの比較ルールにより、先ほどの例は以下のように最適化できます。

if (array[index] != null) {
  // The == and != operators consider null equal to only null or undefined
}  
解説 (12)
if(!arrayName[index]){
     // do stuff
}
解説 (2)
if(arrayName.length > index && arrayName[index] !== null) {
    //arrayName[index] has a value
}
解説 (7)