【问题标题】:Associatif array doesnt have a length [duplicate]关联数组没有长度[重复]
【发布时间】:2017-08-15 20:53:46
【问题描述】:

我正在尝试在 javascript 中 JSON.stringify 一个关联数组,当我 console.log 它时输出是:

Array[0]
adresse:
"zfzf"
adresse2:
"zfz"
adresse3:
"fzfz"
code_postal
"fzfz"
[...]
length:
0
[...]
__proto__:
Array[0]

你可以看到lenght等于0,所以当我用JSON.Srigify它时,答案是[ ]

我用这样的方式构建我的数组:

var info = [];
    $("[data-change]").each(function(key,obj){
        if ($(obj).val() == "") {
            i = 1;
        }
        else {
            info[$(obj).attr("name")] = $(obj).val();
            j++;
        }
    });

所有这些“数据更改”都是输入,我尝试使用变量 j 而不是 $(obj).attr("name")]它可以工作,但我需要将密钥作为输入的名称

【问题讨论】:

  • 使其成为 javascript 对象。使用info = {};,然后创建您的对象并对其进行字符串化。您此时正在创建一个没有$(obj).attr("name")] 索引的数组。这就是它不起作用的原因。

标签: javascript arrays json


【解决方案1】:

因为对象没有length 属性。

使用Object.keys(obj).length查看长度

【讨论】:

    猜你喜欢
    • 2012-05-20
    • 1970-01-01
    • 1970-01-01
    • 2022-08-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-26
    相关资源
    最近更新 更多