要通过嵌套在对象数组的属性中的对象属性的值来查找对象数组中的多个索引,可以使用以下步骤:
以下是一个示例代码,展示如何通过嵌套属性值查找对象数组中的多个索引:
function findIndexesByNestedPropertyValue(objArray, nestedProperty, targetValue) {
const resultIndexes = [];
for (let i = 0; i < objArray.length; i++) {
const nestedValue = getNestedValue(objArray[i], nestedProperty);
if (nestedValue === targetValue) {
resultIndexes.push(i);
}
}
return resultIndexes;
}
function getNestedValue(obj, nestedProperty) {
const properties = nestedProperty.split('.');
for (let i = 0; i < properties.length; i++) {
obj = obj[properties[i]];
if (obj === undefined) {
return undefined;
}
}
return obj;
}
// 示例使用
const objArray = [
{ name: 'John', address: { city: 'New York' } },
{ name: 'Jane', address: { city: 'Los Angeles' } },
{ name: 'Bob', address: { city: 'New York' } },
{ name: 'Alice', address: { city: 'Chicago' } }
];
const indexes = findIndexesByNestedPropertyValue(objArray, 'address.city', 'New York');
console.log(indexes); // [0, 2]
上述示例中,我们定义了findIndexesByNestedPropertyValue
函数来查找对象数组中满足嵌套属性值匹配的索引。getNestedValue
函数用于获取嵌套属性的值。
对于该问题,有以下相关概念和推荐的腾讯云产品:
概念:
推荐的腾讯云产品:
请注意,以上仅为示例推荐,并不代表广告宣传。您可以根据具体需求选择适合的云计算产品。
领取专属 10元无门槛券
手把手带您无忧上云