【问题标题】:Searching through a JSON File搜索 JSON 文件
【发布时间】:2021-03-10 12:30:29
【问题描述】:

假设我有一个 JSON 文件:

{
   "something": {
      "hey":      "15145143",
      "foo":      "32431451",
      "test":     "34131343",
      "anything": "12341123"
   }
}

名称不重要,重要的是它们的值。 现在我有一个 String ,我想知道这个字符串是否是我的 json 文件的值。 我想象类似的东西,但显然这个命令不存在:

if (file.something.includes(s)) ...

【问题讨论】:

  • 我们是否可以假设您已经解析了文件中的 JSON 并将结果分配给file?因为这就是您的示例中的样子。

标签: javascript node.js arrays json discord.js


【解决方案1】:

试试

if (Object.values(file.something).includes(s))

通过使用object.values() 方法,您只查询您的对象值

const obj = {
   "something": {
      "hey":      "15145143",
      "foo":      "32431451",
      "test":     "34131343",
      "anything": "12341123"
   }
}

console.log('Does object include 15145143?', Object.values(obj.something).includes('15145143'));

console.log('Does object include 123?', Object.values(obj.something).includes('123'));

【讨论】:

    【解决方案2】:

    如果您想将字符串与值完全匹配,请使用

    stringToMatch = 's'
    console.log(Object.values(yourJson.something).includes(stringToMatch ))
    

    如果您希望它匹配值的子字符串,请使用

    stringToMatch = 's'
    console.log(Object.values(yourJson.something).some(key => key.includes(stringToMatch)))
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-06-07
      • 1970-01-01
      • 2021-12-23
      • 1970-01-01
      • 2017-07-14
      • 2015-01-30
      • 1970-01-01
      相关资源
      最近更新 更多