当包含键和值时,数组长度返回为未定义

Array length coming back as undefined when including key and value

JQUERY

var a = {};
$('#individual_users_result').find("li").each(function() {
    var added_domains = $(this).attr('data-id');
    var added_domains_text = $(this).text().trim();
    a[added_domains] = added_domains_text;
})

我正在创建一个包含键和值的数组。我正在尝试确定数组是否为空。我已经确认使用 console.log(a) 结果,它产生的正是我需要的。

当我使用它来确定数组是否为空时,我在 a.length

上得到 undefined
if (a.length !== 0) {
    alert(a.length)
}

如果我改变这个

a[added_domains] = added_domains_text;

至此

a = added_domains_text;

然后我得到长度为39

我在生成数组时添加键值导致我的代码将 length 显示为 undefined 是怎么回事?

应该是:var a = [];对于空数组而不是 {}

示例:

var a = [item1, item2, item3];

通过使用

var a = {};

您正在初始化一个对象;不是数组。

对于数组,使用

var a = [];