Подтвердить что ты не робот

Javascript: проверьте, существует ли массив, если его не создать

как проверить, существует ли конкретный массив, и если он не будет создан?

4b9b3361

Ответ 1

Если вы хотите проверить, существует ли массив x и создать его, если это не так, вы можете сделать

x = ( typeof x != 'undefined' && x instanceof Array ) ? x : []

Ответ 2

var arr = arr || [];

Ответ 3

Вы можете использовать оператор typeof для тестирования undefined и instanceof, чтобы проверить, есть ли экземпляр массива:

if (typeof arr == "undefined" || !(arr instanceof Array)) {
    var arr = [];
}

Ответ 5

Если вы хотите проверить, является ли объект уже массивом, чтобы избежать известных проблем оператора instanceof при работе в многокомпонентных сред DOM, вы можете использовать метод Object.prototype.toString:

arr = Object.prototype.toString.call(arr) == "[object Array]" ? arr : [];

Ответ 6

Если вы говорите о среде браузера, то все глобальные переменные являются членами объекта window. Итак, чтобы проверить:

if (window.somearray !== undefined) {
    somearray = [];
}