如何访问json密钥中的Json密钥
我有一个关于JSON的问题。 我正在使用一个jquery插件,它预期JSON结构如下:
[ { key: "Id" }, { key: "Username" }, { key: "Age" } ],
但我的JSON看起来像:
[{ "Employee1": { "ID": 43036, "Name": XYZ, "Age": 21 }, "Employee2": { "ID": 30436, "Name": MNP, "Age": 23 } }]
现在我不想更改我的代码,是否有任何解决方案,以便我可以将Id,Name传递给我的插件json而不使用“Employee”。 我需要我的JSON:
[ { "ID": 43036, "Name": XYZ, "Age": 21 }, { "ID": 30436, "Name": MNP, "Age": 23 } ]
提前致谢
像这样的东西?
var myObj = [{ "Employee1": { "ID": 43036, "Name": XYZ, "Age": 21 }, "Employee2": { "ID": 30436, "Name": MNP, "Age": 23 } }]; var jsonObj = []; $.each(myObj[0], function(key, val){ jsonObj.push({ key: val.ID }); jsonObj.push({ key: val.Name }); jsonObj.push({ key: val.Age }); });
你需要一个简单的函数来推送对象内部的值,
var data = [{ "Employee1": { "ID": 43036, "Name": 'XYZ', "Age": 21 }, "Employee2": { "ID": 30436, "Name": 'MNP', "Age": 23 }}]; data = data[0]; var output = []; for (i in data) { output.push(data[i]); }
DEMO
注意:您发布的JSON无效,XYZ和MNP是字符串值,我想其他数字也是..我将validation留给您。