Просмотров: 15 797

Как проверить пустой ли массив в Javascript.

В Javascript очень часто приходиться работать с массивами. Одна из проверок, с которой приходится часто встречаться – это проверка на то пустой ли массив или в нем есть какие-то элементы.

24-Empty Trash

Когда вы вручную создаете массив, то там эту проверку производить совершенно не обязательно, там сразу все очевидно.

Другое дело, когда массив формируется автоматически при выполнении каких-либо условий. Например, вы получаете данные из базы данных и нужно проверить нашлось ли что-либо при таких условиях, либо таких записей в базе данных нет.

Если ничего найдено не было, то будет возвращаться пустой массив.  Эту ситуацию нужно отследить и делать соответствующие действия.

Давайте посмотрим на упрощенном примере, как это работает.

Итак, предположим, что у нас есть два массива с данными:

var dataFull = [3,5,7];
var dataEmpty = [];

dataFull – это массив, который содержит в себе элементы

и массив

dataEmpty – это пустой массив.

Задача в том, чтобы программно проверить пустой ли каждый из этих массивов или нет и вывести соответствующее сообщение.

Для проверки на то есть-ли какие-либо элементы в массиве, можно использовать свойство length.

Например,

data.length

Возвращаясь к задаче, которую мы поставили, решение может выглядеть вот так:

var dataFull = [3,5,7];
var dataEmpty = [];
if (dataFull.length == 0) {alert('Массив dataFull пустой');}
else {alert('В массиве dataFull что-то есть');}
if (dataEmpty.length == 0) {alert('Массив dataEmpty пустой');}
else {alert('В массиве dataEmpty что-то есть');}

Чтобы посмотреть, как это работает, можете перейти по следующей ссылке:

//jsfiddle.net/dimachen/Hdka4/1/

На этом все. Надеюсь, что в будущем с подобными проверками у вас больше возникать трудностей не будет.

Кстати, если вам будет интересно, я занимаюсь настройкой систем веб-аналитики для сайтов (Яндекс Метрика и Google Analytics).

Если вы хотели бы сделать ваш сайт более эффективным и, чтобы он приносил больше денег, веб-аналитика может в этом помочь.

С помощью инструмента «Цели» вы можете добиться хороших результатов в этом деле. Подробнее здесь.

  • https://plus.google.com/107576904626802110175 Іван Захарченко

    Тут есть баг в массиве один элемент тогда тоже будет 0

  • Meow

    Еще как вариант:

    if (!dataEmpty.length) {alert(‘Массив dataEmpty пустой’);}
    else {alert(‘В массиве dataEmpty что-то есть’);}

  • Иван

    я проверил алертом, выводит 1, так что бага нет