Как проверить, определено ли значение как неопределенное, или если оно действительно не определено?
например.Javascript: заданное значение разделительного массива, которое не определено, и значение массива, которое не определено
var a = [];
a[0] = undefined;
// a defined value that's undefined
typeof a[0] === "undefined";
// and a value that hasn't been defined at all
typeof a[1] === "undefined";
Есть ли способ отделить эти два? можно использовать цикл for-in для прохождения массива, но есть ли более легкий способ?
Undefined означает, что он не определен - если вы явно установили что-то неопределенное, это также не определено по определению. Вы можете использовать null, проверить индекс на длину массива и т. Д. –
True. Я упростил свою реальную проблему, чтобы вопрос приобрел больше смысла. Массив - это действительно коллекция из данных, где undefined - допустимое значение, которое говорит мне, что что-то не определено. Проблемы, похоже, возникают, когда массив [undefined], и это заставило меня задуматься о теме вопроса ... – Marcus