gpt4 book ai didi

javascript - 在 AngularJS 中提取 json 对象中的对应值

转载 作者:行者123 更新时间:2023-11-30 12:42:48 25 4
gpt4 key购买 nike

我正在使用 AngularJS。我有一个如下所示的 json 对象;

info = [
{
"name": "Tom",
"id": "111"
},
{
"name": "Sam",
"id": "222"
},
{
"name": "James",
"id": "333"
}
]

我想要一个函数,以便在找到匹配名称时采取一些操作(在这种情况下,返回相应的 ID。)换句话说,如果输入的匹配名称是“Tom”,我想要根据上面的 json 对象返回 id '111'。

我写了一些代码来找到一个匹配的名字。

$scope.getIdFromName = function()
{
angular.forEach(info, function(value, key)
{
//$scope.searchByName contains the name to be matched
if (key === 'name' && value === $scope.searchByName)
{
//$scope.searchById is the id to be returned
$scope.searchById = key;
alert("found");
}
});
};

代码哪里出错了?还是错得离谱,不如完全重写?任何建议(不需要是 angularjs)都将受到欢迎。非常感谢。

最佳答案

由于 info 是一个对象数组,因此键将是每个项目的索引,而值将是该索引处的整个对象。您的 forEach 应如下所示:

angular.forEach(info, function(value, key)
{
//$scope.searchByName contains the name to be matched
if (value.name === $scope.searchByName)
{
//$scope.searchById is the id to be returned
$scope.searchById = value.id;
alert("found");
}
});

关于javascript - 在 AngularJS 中提取 json 对象中的对应值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23804690/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com