改变对象的结构javascript
我想改变一个对象的结构javascript,例如:
我有这样的结构:
obj = { "email": "abc@site.com", "societe.name": "xyz" }
我想把它改成:
obj = { "email": "abc@site.com", "societe": { "name": "xyz" } }
感谢帮助。
尝试这个:
var obj = { "email": "abc@site.com", "societe.name": "xyz" }; var newObj = {}; var keys = Object.keys(obj); for (var i = 0; i < keys.length ; i++) { var key = keys[i]; // you can change this to '.name' if you want to be specific if (key.indexOf('.') > -1) { var splitted = key.split('.'); var innerObj = {}; innerObj[splitted[1]] = obj[key]; newObj[splitted[0]] = innerObj; } else { newObj[key] = obj[key]; } } console.log(newObj);
JSFIDDLE
。