如何动态添加到JavaScript对象

How to dynamically add to a JavaScript object?

本文关键字:添加 JavaScript 对象 动态 何动态      更新时间:2023-09-26

我似乎不知道如何获得以下结果。。。

var errors;
errors = { username: "username_error", email: "email_error" };

当循环通过此代码中的数据时:

var errors = {}
$.each(data,function(k,v)
{
   errors[k] = v; // doesn't seem to work
});

它确实以不同的格式生成了一个对象。

编辑:控制台日志。

预期结果:

Object
email: "email_error"
username: "username_error"
__proto__: Object
 edit:25
Object
__proto__: Object

生成的结果:

Object
email: Array[1]
0: "email_error"
length: 1
__proto__: Array[0]
username: Array[1]
0: "username_error"
length: 1
__proto__: Array[0]
__proto__: Object

根据日志输出发布的结果,data中的对象似乎是数组。尝试用以下内容替换分配:

errors[k] = v.length>0 ? v[0] : ""

试试这个

var errors = {}
$.each(data,function(k,v)
{
   errors[k] = v[0];
});

演示