gpt4 book ai didi

javascript - 检查数组中是否存在具有特定属性的对象

转载 作者:行者123 更新时间:2023-11-29 18:25:41 24 4
gpt4 key购买 nike

请记住,我还不太了解要搜索哪些关键字的词汇量(现在就跳上编码潮流......),所以这可能是一个非常容易回答的问题!

我有一个对象数组,比方说

M = [A_1, A_2, ..., A_n]

,其中 A_i 是类的实例化

A = {text: "string", coords:[x,y]}

我的问题是:检查我的数组 M 是否包含对象 A_i 的快速、优雅、简单的方法是什么

A_i.text="your mom" && A_i.coords = [9,9]

是真的吗?

我可以访问 underscore.js,它似乎有一些漂亮的做事方式,但我对如何实现它有点困惑......

我尝试过的(使用 underscore.js 库)是:

var isitso = _.find(M, function (i) { 
return i.text == "your mom" && i.coords == [9,9];
});

在学习 JS 的这个阶段,我会欣赏尽可能多的解决这个问题的不同方法。只是为了看看可以做什么以及如何做。

提前致谢!

最佳答案

你所拥有的困难在于数组相等是引用相等(它们必须是相同的内存位置),而不是值相等(它们具有相同的值)。如果您将支票更改为:

      return i.text == 'your mom' && i.coords[0] == 9 && i.coords[1] == 9;

它应该可以工作。在这种情况下,您要检查第一个 (0) 和第二个 (1) 元素是否具有必要的值,而不是比较数组对象本身。比较数字确实比较值而不是引用。

关于javascript - 检查数组中是否存在具有特定属性的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13548705/

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