当前位置: 首页 > 知识库问答 >
问题:

.过滤器不是函数[重复]

宋伯寅
2023-03-14

这是我的对象(确保它是typeof对象):

{
    "1": {"user_id":1,"test":"","user_name":"potato0","isok":"true"},

    "2":{"user_id":2,"test":"","user_name":"potato1","isok":" true"},

    "3":{"user_id":3,"test":"","user_name":"potato2","isok":" true"},

    "4":{"user_id":4,"test":"","user_name":"potato3","isok":"locationd"}

}

为什么使用.filter对我不起作用?

this.activeUsers = window.users.filter( function(user) {
     // return ( (user.test === '0') && (user.isok === '0') ); 
     return user.user_id === 1;
}); 

.过滤器不是函数

建议的对象替代方案是什么?

共有1个答案

公孙琛
2023-03-14

filter是数组上的一种方法。由于您发布的代码包含一个对象,因此您将看到此错误。您可能希望在使用object.values从对象获得所有值后应用filter,如下所示:

var users = {
  "1": {
    "user_id": 1,
    "test": "",
    "user_name": "potato0",
    "isok": "true"
  },

  "2": {
    "user_id": 2,
    "test": "",
    "user_name": "potato1",
    "isok": " true"
  },

  "3": {
    "user_id": 3,
    "test": "",
    "user_name": "potato2",
    "isok": " true"
  },

  "4": {
    "user_id": 4,
    "test": "",
    "user_name": "potato3",
    "isok": "locationd"
  }
};

console.log(Object.values(users).filter(user => user.user_id === 1));
 类似资料:
  • 我所拥有的 预期产出 实际产量 这只是一个例子。在我的真实代码中,我正在对我的全局状态(useContext, useReduer)执行删除操作。 是一个ID数组。

  • 在我的控制器中,我想过滤一个对象数组。这些对象中的每一个都是一个映射,可以包含字符串和列表 我尝试使用< code>$filter('filter')(array,function)格式,但是我不知道如何在我的函数中访问数组的各个元素。这里有一个片段显示了我想要的。 然后在中,我将检查每个单独的属性是否匹配 我必须在控制器中完成所有这些操作,并编译一个列表列表并在范围内设置它们。因此,我确实需要以

  • 我正试图在我的RecyclerView中实现搜索过滤器,就像在这篇文章中一样 我已经对它进行了调试,它确实按照预期过滤了项目,但列表在应用程序中似乎没有改变。一、 E:我过滤一个名字,有7个结果,在屏幕上是原始列表。 我的 onCreateMenu活动选项是: 我的适配器如下所示: 我忘了什么? 提前致谢!

  • 我正在使用PyThon和熊猫。 在网球比赛中,我想通过以下方式过滤我的数据: 检查获胜者是某个玩家 检查失败者是否在指定的集合内 我试着用下面的方法来做 其中df是存储我的数据的数据帧对象。 我得到以下错误: 我理解错误。但是我还没有想出办法来解决它。 我如何进行过滤,使df.loser根据许多值进行检查,而不是像df.winner==player这样的值?

  • 我正在尝试编写一个Python代码,它打开一个csv文件,其中包含书籍、作者、流派等的列表,允许用户输入ISBN编号,并根据该编号显示与搜索匹配的结果。 csv文件有500行和7列,以逗号分隔。 这是我的密码。现在,代码只显示为输出:[1行x 7列]。但它应该显示与ISBN匹配的行的每个信息。

  • 我正在开发一个小型纸牌游戏网页应用程序。我正在使用一个“房间”系统来容纳每个游戏及其玩家。每个房间都有一个玩家列表,我需要过滤这个列表,以便只获得在Firebase实时数据库中有值的玩家列表。在本例中,我将在中检查它们的用户存在。 我原以为我可以很简单地将其拼凑在一起,但是过滤后的数组,或者,在过滤完成之前就被读取了。 用forEach演示: 我期望发生的是: 但真正发生的是: 我如何确保(或)同