Javascript 如何使用$.map with Object.keys函数从为Object.keys指定的数组中获取第一个值?
我有一个json数组:Javascript 如何使用$.map with Object.keys函数从为Object.keys指定的数组中获取第一个值?,javascript,jquery,arrays,json,Javascript,Jquery,Arrays,Json,我有一个json数组: //val 0: {name: "jeg", class: "klase-jeg", id: "id-jeg"} 1: {age: 11, id: "jeg-id-11"} 2: {mail: "jeg mail", class: "jeg-klas-mail"} 我想得到每个json的第一个键: (name,age,mail) 这是我的职责: $.map(val, Object.keys) //Result: ["name", "class", "id", "age
//val
0: {name: "jeg", class: "klase-jeg", id: "id-jeg"} 1: {age: 11, id: "jeg-id-11"} 2: {mail: "jeg mail", class: "jeg-klas-mail"}
我想得到每个json的第一个键:
(name,age,mail)
这是我的职责:
$.map(val, Object.keys) //Result: ["name", "class", "id", "age", "id", "mail", "class"]
但结果是所有的关键
为了从json中获取第一个密钥,我使用了以下方法:
obj = val[0]; Object.keys(obj)[0]); //Result: name
我试着把它和地图一起使用,但没用:
$.map(val, Object.keys[0]) //failed
我可以使用each或for,但我想知道是否可以使用map with object.key来获取每个json的第一个键
谢谢 您可以像这样使用map和Object.key:
常数val=[
{name:jeg,class:klase-jeg,id:id-jeg},
{年龄:11,id:jeg-id-11},
{mail:jeg-mail,class:jeg-klas-mail}]
const firstKeys=val.mapa=>Object.keysa[0];
console.logfirstKeys
/*
在jquery中:
$.mapval,a=>Object.keysa[0]
*/ 我认为你可以这样做: 假设:
a = [{name: "jeg", class: "klase-jeg", id: "id-jeg"},{age: 11, id: "jeg-id-11"},{mail: "jeg mail", class: "jeg-klas-mail"}]
然后做:
a.map((el)=>{
return Object.keys(el)[0];
});
希望有帮助 每个对象的第一个键因浏览器而异-对象键是无序的-这会改变您的要求吗?可能的重复您最好只访问您想要的属性,而不是在第一个键可能不是您想要的键时尝试获取第一个键。它不符合顺序,因为我只是想要获得每个json的第一个键,无论是什么顺序,我在一小时前添加了相同的答案,但被删除了,因为不确定属性的顺序。因为objectit中不保证顺序,所以它不满足顺序,因为我只想得到每个json的第一个键,不管是什么order@CodeManiac我假设OP想要任何由Object决定的第一个密钥。密钥现在已确认。你说得对,我应该在回答中提到这一点,现在我陷入了-1:@adiga我是新来的,你能告诉我是谁做的吗-1是你的答案,这意味着什么。允许在评论中问这个问题吗?