gpt4 book ai didi

javascript - 如果两个关联数组有一个字段值相同,则从它们中获取字段值

转载 作者:行者123 更新时间:2023-12-01 01:37:06 26 4
gpt4 key购买 nike

我尝试过下面的 jquery 从另一个数组中获取数据,如果它们都有共同的 id

function fillVehicleDetails(vehicleDetailsArray,aggregationDriverArray, aggregationVehicleArray) {
if (vehicleDetailsArray.length == 0){
$("#vehicle-table").append("<tr><td>No Vehicle Added</td><td></td><td></td><td></td><td></td></tr>");
}else{
for (var counterOfLoop in vehicleDetailsArray){
noOfVehicles++;
var SearchVehicleId = vehicleDetailsArray[counterOfLoop]["VehicleId"]['$oid'];
var VehicleNumber = jQuery.grep(aggregationVehicleArray, function(a){
return a['_id']['$oid'] == SearchVehicleId}).VehicleNumber;
}
}
}

请注意,aggregationVehicleArray 包含类似的数据

array(2)
0 =>
VehicleNumber: "JK 123"
VehicleType: "Permanent"
_id: {$oid: "5b962874d2ccda10ac003702"}

1 =>
VehicleNumber: "JK 222"
VehicleType: "Permanent"
_id: {$oid: "5b962874d2ccda10ac003686"}

如果 SearchVehicleId 在循环内包含“5b962874d2ccda10ac003702”,那么它应该在 VehicleNumber 中获取“JK 123”。上面的代码返回“未定义”...请帮忙!!!

最佳答案

您返回了错误的值。试试这个返回a['_id']['$oid'] == SearchVehicleId})[0].VehicleNumber。由于 grep 存储回数组中,并且数组从索引 0 开始

var SearchVehicleId="5b962874d2ccda10ac003702";

var aggregationVehicleArray=[
{
"VehicleNumber": "JK 123",
"VehicleType": "Permanent",
"_id": {"$oid": "5b962874d2ccda10ac003702"}
},{
"VehicleNumber": "JK 222",
"VehicleType": "Permanent",
"_id": {"$oid": "5b962874d2ccda10ac003686"}
}
];

var VehicleNumber = jQuery.grep(aggregationVehicleArray, function(a){
return a['_id']['$oid'] == SearchVehicleId})[0].VehicleNumber;

console.log(VehicleNumber);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

关于javascript - 如果两个关联数组有一个字段值相同,则从它们中获取字段值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52720483/

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