我有一个像以下方式的网络数组
"network_contents": [
{
"facebook":"contents to all pages",
},
{
"twitter":"twiter contents",
},
{
"linkedin":"linked in contents",
}
]
我想根据其内容为该数组添加一些键。如果是facebook的关键应该是facebook,如果是twitter键应该是twitter。但不知道该怎么做。
我的要求是访问网络数组内容,但它可能会或可能不会将这些facebook,twitter与值相关联。我需要访问它的值。当我分配一个键值时,将很容易获取其内容。所以我尝试这种方式循环遍历数组
message.network_contents.forEach( function (nwContent) {
if(nwContent.twitter) {
console.log('nw content', nwContent.twitter);
}
})
我可以在这个foreach循环中创建一个数组,如下所示。
{
"data": [
{
"facebook": {
"facebook": "facebook content"
},
"twitter": {
"twitter": "twitter content"
}
}
]
}
非常感谢您的帮助
答案 0 :(得分:1)
我在评论中所说的实施:
var oldsies = stuff.network_contents;
var newsies = stuff.network_contents = {};
oldsies.forEach(function(network) {
var name = Object.keys(network)[0];
newsies[name] = network;
});
答案 1 :(得分:0)
您提供了一个JS对象的示例,而不是字典,因此无法添加键值。 你需要这样的东西:
var network_contents = [];
network_contents["facebook"] = {config1: {name:"config1", value:"value1"}};
network_contents["twitter"] = {config2: {name:"config2", value:"value2"}};
例如: 。network_contents [ “脸谱”] config1.value; //将返回“value1”
您可以轻松地将对象转换为字典。