我需要将父数组内的数组转换为对象以匹配我的数据库模型数据。
我有这样的数组:
emails: Array[2]
0: "[email protected] /cdn-cgi/l/email-protection"
1: "[email protected] /cdn-cgi/l/email-protection"
id: 1
firstname: "Jane"
lastname: "Doe
我想要实现的是将电子邮件数组转换为对象数组,如下所示:
emails: Array[2]
0:
{
name: "[email protected] /cdn-cgi/l/email-protection"
}
1:
{
name: "[email protected] /cdn-cgi/l/email-protection"
}
id: 1
firstname: "Jane"
lastname: "Doe
我尝试使用此代码将数组转换为对象,但由于某种原因它失败了(没有显示数据 - >变量 rv 为空):
var rv = {};
for (var i = 0; i < dbInfo.emails.length; ++i)
if (dbInfo.emails[i] !== undefined) rv[i] = dbInfo.emails[i];
有人知道为什么我的代码失败并且有人知道此类问题的解决方案吗?
提前致谢。
这是一个完美的用途Array.prototype.map
功能:
dbInfo.emails = dbInfo.emails.map(function(e) {
return { name: e };
});
即只需转换数组的每个单独元素(e
) 到一个对象中{ name: email }
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)