javascript将<string,string [] =“”>转换为<string,string =“”> </string,> </string,>

时间:2013-01-28 14:33:36

标签: javascript jquery

我有一个带有键/值对的javascript对象,其中值是一个字符串数组:

var errors = {
    "Message": ["Error #1", "Error #2"],
    "Email": ["Error #3", "Error #4"]
};

我想将它转换为每个数组的第一个元素的键/值对,以便它代替:

var firstErrorOnly = {
    "Message": "Error #1",
    "Email": "Error #3"
};

我尝试使用jQuery.map执行此操作,但我没有得到我想要的结果。我怎么能做到这一点?

2 个答案:

答案 0 :(得分:4)

您可以使用for ... inhasOwnProperty()遍历整个对象,以您希望的样式创建一个新对象。

var firstErrorOnly = {};
for( var key in errors ) {
  if ( errors.hasOwnProperty( key ) ) {
    firstErrorOnly[ key ] = errors[key][0];
  }
}

答案 1 :(得分:2)

对于jQuery实现,请尝试:

var firstErrorOnly = {};
$.each(errors, function(i, value) {
    firstErrorOnly[i] = value[0];
});

Example fiddle