{"document":
{"people":[
{"name":["Harry Potter"],"age":["18"],"gender":["Male"]},
{"name":["hermione granger"],"age":["18"],"gender":["Female"]},
]}
}
Run Code Online (Sandbox Code Playgroud)
从这个JSON例子,我想拿到钥匙,例如name,age,gender每个人.
这该怎么做?
Jee*_*eva 39
我使用Object.keysJavaScript内置的内容,它将从给定的对象MDN Reference返回一个键数组
var obj = {name: "Jeeva", age: "22", gender: "Male"}
console.log(Object.keys(obj))
Run Code Online (Sandbox Code Playgroud)
Rah*_*air 30
试试这个
var s = {name: "raul", age: "22", gender: "Male"}
var keys = [];
for(var k in s) keys.push(k);
Run Code Online (Sandbox Code Playgroud)
这里的键数组将返回你的键 ["name", "age", "gender"]
Bat*_*eam 14
var input = {"document":
{"people":[
{"name":["Harry Potter"],"age":["18"],"gender":["Male"]},
{"name":["hermione granger"],"age":["18"],"gender":["Female"]},
]}
}
var keys = [];
for(var i = 0;i<input.document.people.length;i++)
{
Object.keys(input.document.people[i]).forEach(function(key){
if(keys.indexOf(key) == -1)
{
keys.push(key);
}
});
}
console.log(keys);
Run Code Online (Sandbox Code Playgroud)
当天的ES6;
const json_getAllKeys = data => (
data.reduce((keys, obj) => (
keys.concat(Object.keys(obj).filter(key => (
keys.indexOf(key) === -1))
)
), [])
)
Run Code Online (Sandbox Code Playgroud)
是的,它可以写成很长的一行;
const json_getAllKeys = data => data.reduce((keys, obj) => keys.concat(Object.keys(obj).filter(key => keys.indexOf(key) === -1)), [])
Run Code Online (Sandbox Code Playgroud)
编辑:如果输入是对象数组类型,则返回所有一阶键
| 归档时间: |
|
| 查看次数: |
83787 次 |
| 最近记录: |