【问题标题】:How do I check an object property value that the value is a string with a space如何检查对象属性值是否为带空格的字符串
【发布时间】:2018-11-28 19:14:35
【问题描述】:

我觉得这应该是直截了当的,但我在这方面找不到任何东西。我有一个对象数组,我想根据它们的值对其进行过滤。

let arr = [
  {
    name : "Justin",
    location : "This place"
  },
  {
    name : "Steve",
    location : "That place"
  }
]

这有效并返回名称为 Justin 的对象

arr.filter(x => x.name == "Justin");

但是,当我运行它时,我得到的只是一个空数组

arr.filter(x => x.location == "This place");

似乎只有当我的字符串中有空格时才会发生。

let arr = [
  {
    name : "Justin",
    location : "This place"
  },
  {
    name : "Steve",
    location : "That place"
  }
]
console.log(arr.filter(x => x.name == "Justin"));
console.log(arr.filter(x => x.location == "This place"));

【问题讨论】:

  • 其实可以的,见上文。
  • 我将您的代码复制并粘贴到我的浏览器控制台上,它工作正常。
  • 我无法复制。
  • 这很烦人。因为我的实际代码仍然无法正常工作。虽然我能够运行我在这里写的东西并让它工作......
  • 我刚刚运行了我的真实代码 classData[0].location;它返回了正确的值。所以我逐字复制它,这不起作用 classData[0].location == "East Lyme";

标签: javascript arrays string object


【解决方案1】:

毕竟我的过滤器从来没有这个问题。我用来构建所有对象的 CSV 文件在我的字符串周围加上了一组额外的引号......所以值不是“East Lyme”,而是“East Lyme”。

【讨论】:

    猜你喜欢
    • 2015-08-15
    • 2014-08-22
    • 2019-06-27
    • 2017-08-19
    • 1970-01-01
    • 2014-05-06
    • 2020-09-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多