当前位置: 首页 > 面试题库 >

使用Node在JSON数组中搜索项目(最好没有迭代)

白青青
2023-03-14
问题内容

目前,我得到这样的JSON响应…

{items:[
  {itemId:1,isRight:0},
  {itemId:2,isRight:1},
  {itemId:3,isRight:0}
]}

我想执行类似的操作(伪代码

var arrayFound = obj.items.Find({isRight:1})

然后将返回

[{itemId:2,isRight:1}]

我知道我可以为每个循环使用a,但是,我试图避免这种情况。当前在Node.JS应用程序的服务器端。


问题答案:
var arrayFound = obj.items.filter(function(item) {
    return item.isRight == 1;
});

当然,您也可以编写一个函数来根据对象文字查找项目:

Array.prototype.myFind = function(obj) {
    return this.filter(function(item) {
        for (var prop in obj)
            if (!(prop in item) || obj[prop] !== item[prop])
                 return false;
        return true;
    });
};
// then use:
var arrayFound = obj.items.myFind({isRight:1});

这两个函数都使用数组上的本机.filter()方法。



 类似资料:
  • 我想在这个json数组中搜索特定的标题。但问题是,我想用正则表达式进行搜索。例如:sb搜索“ad”->函数应该返回前两个json字符串(Adjust和Adn)。 我不知道,现在设置一个javascript函数可以实现这一点。 一些想法?

  • 问题内容: 我有一个JSON数组 我将如何搜索8097并获取内容? 问题答案: 使用该函数将JSON字符串转换为对象数组,然后遍历该数组直到找到所需的对象:

  • 问题内容: 前几天,我接受了亚马逊的采访,他们问我一个问题,涉及以下问题。 给定2个整数数组,其中包含任意数量的正负元素,请查找出现在两个数组中的数字。 我能够非常轻松地解决此问题,因此它将具有计算复杂性,但是不幸的是,这还将具有空间复杂性。可以通过遍历每个数组中的所有元素而无需额外的内存来完成此操作,但这将是。 在我解释完该方法之后,面试官问我是否可以想到一种在计算上为O(n)但不会使用任何额外

  • 问题内容: 如何使用preg_match在数组中搜索? 例: 问题答案: 在这篇文章中,我将为您提供三种不同的方法来满足您的要求。 我实际上建议使用最后一个代码段,因为它最容易理解并且代码简洁。 如何查看数组中与我的正则表达式匹配的元素? 有专门用于此目的的功能。它将一个正则表达式作为第一个参数,并将一个数组作为第二个参数。 请参见以下示例: 输出 但是我只想获取指定组的值。怎么样? 与能解决清洁

  • 问题内容: 创建激活码后,需要1至60秒的时间将代码上传到系统中。因此,在创建新代码之后,我想使用WebDriverWait 60秒钟来确保,并且在此时间段内每3秒钟我要单击“搜索按钮”。有什么办法吗? 问题答案: 附带“免费” 。 您可以在创建时设置一个值,以告诉它应该多久尝试运行一次代码(单击搜索按钮): http://selenium.googlecode.com/git/docs/api/

  • 我在一个数据库中有很多项,有很多列。我需要在其中的两个列中搜索以获得一个数据集。第一列将把具有该代码的任何行分组在一起。第二列调用要添加的特定行,因为它缺少我要查找的的列表。 后端C#为我设置了json,如下所示,但它什么也不返回。 我得到和空的结果集。如果我删除中的任何一个,我就会得到我所期望的结果。所以,我只需要将这些术语合并到一个搜索中。 我在这里浏览了大量文档:https://www.el