0

我似乎无法弄清楚如何获得以下结果......

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
4

2 回答 2

2

根据您在日志输出中发布的结果,其中的对象似乎data是数组。尝试用这个替换作业:

errors[k] = v.length>0 ? v[0] : ""
于 2012-09-01T01:00:49.110 回答
1

尝试这个

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

});

演示

于 2012-09-01T01:01:16.427 回答