Javascript 字符串包括返回false,然后使用toString()转换字符串返回[Object]
这件事让我发疯了,所以请让我摆脱这种疯狂 我得到一个名为“basevalue”的字符串(用Javascript 字符串包括返回false,然后使用toString()转换字符串返回[Object],javascript,Javascript,这件事让我发疯了,所以请让我摆脱这种疯狂 我得到一个名为“basevalue”的字符串(用typeof验证) 原始验证字符串显示:{data:[{id:'201010',键入:'question'}]} 现在我想用以下方式检查ID: if (basevalue.includes("201010")) { var result = "TRUE"; } 或 它永远不会变成“真的” 然后我想用toString()将其重新转换为字符串; 因此: 结果:
typeof
验证)
原始验证字符串显示:{data:[{id:'201010',键入:'question'}]}
现在我想用以下方式检查ID:
if (basevalue.includes("201010")) {
var result = "TRUE";
}
或
它永远不会变成“真的”
然后我想用toString()将其重新转换为字符串;
因此:
结果:[Object Object]
如何检查此字符串是否包含值“201010”
更新
我发现数据是一个数组
因此值“201010”包含在:data[0].id中(看起来数据是一个数组)
现在的问题是计算有多少数据[number]存在,以及如何检查所有ID中是否包含“201010”如果basevalue真的是它工作的字符串。也许不是
var basevalue=“{data:[{id:'201010',键入:'question'}]}”;
if(basevalue.includes(“{data:[{id:'201010',键入:'question'}]}”)){
var result=“TRUE”;
}
console.log(result)
我相信,根据您的编辑,您应该运行类似的操作,以获取数据数组中与字符串“201010”匹配的所有元素:
const allMatches = data.filter(e => e.id === '201010');
console.log('Found these many 201010:', allMatches.length);
或者您特别需要处理字符串吗?请使用演示问题的脚本更新您的问题,最好是使用堆栈片段(工具栏按钮)运行的脚本。如果
baseValue
确实是显示的字符串,baseValue.includes(“201010”)
将是真的。因此,要么A)baseValue
不是该字符串,要么B)它是,并且您的代码没有正确解释baseValue.includes(“201010”)
为真的事实。我们不能帮你知道哪个,你必须调试它。@SethLutske-只是FWIW,代码围栏使用三个反勾,而不是四个。哇,我一直在使用4。每天学习新的东西。@Mark-请将这段简单的代码放入-你会发现basevalue
中存储的东西根本不是字符串。我想我的代码片段满足了你的需要,那么:)
var newvalue = basevalue.toString()
const allMatches = data.filter(e => e.id === '201010');
console.log('Found these many 201010:', allMatches.length);