[英]How to fetch result of matching string from array?
我有以下数组,当我输入数字“98”时,我想显示两个结果,当我输入“983”时,我想显示“字符串 2”的结果,但是当我输入数字“98”时,我没有得到任何结果有人帮我我在这里做错了什么吗?
这是我的以下代码
var array = [ { name:"string 1", number:9845687, other: "that" }, { name:"string 2", number:98325678, other: "that" } ]; var foundValue = array.filter(obj=>obj.number===98); console.log(foundValue);
您可以使用includes
方法通过以下方式执行此操作
var array = [ { name:"string 1", number:98456874, other: "that" }, { name:"string 2", number:98325678, other: "that" } ]; var foundValue = array.filter(obj => { let n = obj.number.toString() if(n.includes('98')) return obj }); console.log(foundValue);
希望能帮助到你
更新
正如你提到的数字不是字符串所以你可以做的是在你comapre之前让它成为字符串它会解决问题
您可以使用indexOf
检查字符串是否包含子字符串。
var array = [ { name:"string 1", number:9845687, other: "that" }, { name:"string 2", number:98325678, other: "that" } ]; var foundValue = array.filter({ var str = obj.number.toString(); return str.indexOf(98) >= 0; }); console.log(foundValue);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.