Funcionará esto para comprobar si un valor en la posición "index" existe o no, o hay una forma mejor:
if(arrayName[index]==""){
// do stuff
}
Todos los arrays en JavaScript contienen elementos array.length
, empezando por array[0]
hasta array[array.length - 1]
. Por definición, se dice que un elemento de la matriz con índice i
es parte de la matriz si i
está entre 0
y array.length - 1
inclusive.
Es decir, los arrays de JavaScript son lineales, empezando por cero y llegando a un máximo, y los arrays no tienen un mecanismo para excluir ciertos valores o rangos del array. Para saber si un valor existe en un índice de posición dado (donde el índice es 0 o un entero positivo), literalmente sólo hay que usar
if (index < array.length) {
// do stuff
}
Sin embargo, es posible que algunos valores de la matriz sean nulos, indefinidos
, NaN
, Infinito
, 0, o toda una serie de valores diferentes. Por ejemplo, si se añaden valores al array aumentando la propiedad array.length
, los nuevos valores serán undefined
.
Para determinar si un valor dado es algo significativo, o ha sido definido. Es decir, no undefined
, o null
:
if (typeof array[index] !== 'undefined') {
o
if (typeof array[index] !== 'undefined' && array[index] !== null) {
Curiosamente, debido a las reglas de comparación de JavaScript, mi último ejemplo puede ser optimizado hasta esto:
if (array[index] != null) {
// The == and != operators consider null equal to only null or undefined
}