Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/404.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Javascript中的嵌套对象中查找特定值_Javascript_Object - Fatal编程技术网

如何在Javascript中的嵌套对象中查找特定值

如何在Javascript中的嵌套对象中查找特定值,javascript,object,Javascript,Object,我有一个问题,如果我有一个像 let users = { { name: sam, age: 21 }, { name: ram, age: 24 }, { name: jhon, age: 23 }, } 如何访问该对象中某个对象的特定值(“用户”) 比如,我想要jhon的年龄,你现在拥有的不是有效的Javascript。向嵌套对象添加关键点并按关键点引用它们: 让用户={ “山姆”:{ 姓名:“山姆”, 年龄:21 },

我有一个问题,如果我有一个像

let users = {
 {
    name: sam,
    age: 21
  },
  {
    name: ram,
    age: 24
  },
  {
    name: jhon,
    age: 23
  },
}
如何访问该对象中某个对象的特定值(“用户”)
比如,我想要jhon的年龄,你现在拥有的不是有效的Javascript。向嵌套对象添加关键点并按关键点引用它们:

让用户={
“山姆”:{
姓名:“山姆”,
年龄:21
},
“ram”:{
名称:“ram”,
年龄:24
},
“jhon”:{
姓名:“jhon”,
年龄:23
}
};
让jhonAge=users.jhon.age;

首先,您的对象无效

其次,您可以通过使用嵌套循环来实现所需的功能 通过循环抛出
users
对象中的所有对象,并测试每个对象的名称

注意:这一个就可以了。你可以做得不同。
让用户={
“0”:{姓名:“萨姆”,年龄:21},
“1:{姓名:“拉姆”,年龄:24},
“2:{姓名:“jhon”,年龄:23}
}
for(让usersKey输入用户){
for(让输入用户[usersKey]){
if(key==“name”&&users[usersKey][key]==“jhon”){
log(“Jhon的年龄是:”users[usersKey][“age”])
}
}

}
我想你的意思是
用户
是一个对象数组。在这种情况下,您可以使用

让用户=[
{
姓名:“山姆”,
年龄:21
},
{
名称:“ram”,
年龄:24
},
{
姓名:“jhon”,
年龄:23
},
];
const{age}=users.find(({name})=>name==“jhon”);

控制台日志(年龄)
您可以使用
find
方法,如果您有这样一个对象,您将获得
未捕获的语法错误,请查看以下链接:意外标记“{”
error@AlonEitan这也是这里的第一个问题。下一个问题是
sam
不是一个变量。