gpt4 book ai didi

Jquery如何通过数组中的属性查找对象

转载 作者:IT王子 更新时间:2023-10-29 03:26:39 26 4
gpt4 key购买 nike

假设我有一组“目的”对象:

//array of purpose objects:
var purposeObjects = [
{purpose: "daily"},
{purpose: "weekly"},
{purpose: "monthly"}
];

(为简单起见,我省略了其他属性)

现在我想要一个方法,如果找到匹配的用途名称,它会返回特定的一个对象。

这是行不通的:

function findPurpose(purposeName){
return $.grep(purposeObjects, function(){
return this.purpose == purposeName;
});
};

findPurpose("daily");

但它实际上返回一个空数组:

[]

我正在使用 JQuery 1.5.2。我也尝试过 $.each() 但没有运气。显然,大多数 JQuery 方法都是为与 DOM 元素一起使用而设计的(例如 filter()

关于如何实现这一点有什么想法吗?

最佳答案

不需要 jQuery。

JavaScript 数组有一个 find方法,所以你可以在一行中实现:

array.find((o) => { return o[propertyName] === propertyValue })

示例


const purposeObjects = [
{purpose: "daily"},
{purpose: "weekly"},
{purpose: "monthly"}
];

purposeObjects.find((o) => { return o["purpose"] === "weekly" })

// output -> {purpose: "weekly"}

如果需要IE兼容,导入这个polyfill在您的代码中。

关于Jquery如何通过数组中的属性查找对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5579678/

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