Это зависит от того, что вы подразумеваете под «пустым. "
Если вы имеете в виду, что вы получаете:
[{}]
... потом madox2's answer is a good way to check, и ни один из ниже не будет работать.
Но если вы имеете в виду [null]
или аналогичные:
Если вы хотите проверить, специально для undefined
(обратите внимание на ===
, а не ==
) (но вы не получите, что с JSON):
if (myarray[0] === undefined)
Или специально для null
(обратите внимание на ===
, а не ==
):
if (myarray[0] === null)
Или для любого из них (обратите внимание на ==
, а не ===
):
if (myarray[0] == null)
Или для любого falsy значение (0
, ""
, NaN
, null
, undefined
, или, конечно, false
):
if (!myarray[0])
Что вы подразумеваете под «пустым»? Самое «пустое» значение, о котором я могу думать, - «undefined», но JSON не может дать вам массив с «неопределенной» записью, поскольку у этого нет этой концепции. –
FYI, 'myarray [0] == 'empty'' проверяет, является ли первый элемент массива ** строкой **' 'empty''. Это не похоже на полезную вещь, чтобы попробовать в первую очередь. Аналогично, 'myarray.indexOf (0)' пытается найти индекс * значения * '0'. Похоже, вам стоит разогнать некоторые основы JavaScript о значениях: http://eloquentjavascript.net/01_values.html, http://eloquentjavascript.net/04_data.html. –