<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
</head>
<body>
<script type="text/javascript">
var allMsg = [
{ name: "薛之谦", id: 1 },
{ name: "霍建华", id: 2 },
{ name: "蔡徐坤", id: 3 },
{ name: "胡歌", id: 4 },
{ name: "胡说", id: 5 }
];
// 其余代码同上
function handleSearch(queryString) {
let queryStringArr = queryString.split("");
let str = "(.*?)";
let filterMsg = [];
let regStr = str + queryStringArr.join(str) + str;
let reg = RegExp(regStr, "i"); // 以mh为例生成的正则表达式为/(.*?)m(.*?)h(.*?)/i
allMsg.map(item => {
if (reg.test(item.name)) {
filterMsg.push(item);
}
});
return filterMsg;
}
console.log(handleSearch("建华"));
</script>
</body>
</html>
网友回复