假设我有一个 JSON 文件:{ "something": { "hey": "15145143", "foo": "32431451", "test": "34131343", "anything": "12341123" }}名称不重要,重要的是它们的值。现在我有一个 String s,我想知道这个字符串是否是我的 json 文件的值。我想象类似的东西,但显然这个命令不存在:if (file.something.includes(s)) ...
2 回答

子衿沉夜
TA贡献1828条经验 获得超3个赞
尝试
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'));

梦里花落0921
TA贡献1772条经验 获得超6个赞
如果您想将字符串与值完全匹配,请使用
stringToMatch = 's'
console.log(Object.values(yourJson.something).includes(stringToMatch ))
如果您希望它匹配值的子字符串,则使用
stringToMatch = 's'
console.log(Object.values(yourJson.something).some(key => key.includes(stringToMatch)))
添加回答
举报
0/150
提交
取消