JavaScript搜索JS逻辑

var but=(“#id”).val()//获取搜索框输入值
var a=[一句话(关键字:机器),第二句话(关键字:哈哈),第三句话(关键字:呵呵)]
然后正则表达式要怎么样写才能通过输入搜索关键字获得整一句话

a是一个数组,输入搜索关键字获得整一句话是什么意思呢

<!doctype html>
<html lang="en">
 <head>
  <meta charset="UTF-8">
  <title>Document</title>
 <script src="./jquery-1.10.1.js"></script>
 </head>
 <body>
 <input type="text" id="id" onblur="kk();">
    <br/>
<span id="sp"></span>
 <script>
          var a=["一句话(关键字:机器)","第二句话(关键字:哈哈)","第三句话(关键字:呵呵)"];
        function kk(){
            var kw = $("#id").val();
        for(var i=0;i<a.length;i++){
            var as = a[i];
            if(as.indexOf(kw)!=-1){
                $("#sp").html(as);    
                break;
            }else{
                $("#sp").html("");
            }
        }
        }
  </script>
 </body>
</html>

img

题主意思是每次点击搜索把内容放到数组里面? 直接a.push(but)就好了 如果不是请解释一下 通过输入搜索关键字获得整一句话什么意思

封装函数每次点击搜索去调用函数把内容查出来

<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>
<script src="https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js"></script>

<body>
  <form>
    <input id="inp" />
    <button id="btn" type="button">点我</button>
  </form>
  <script>
    $(function () {
      $("#btn").click(function () {
        var a = ['一句话(关键字:机器)', '第二句话(关键字:哈哈)', ' 第三句话(关键字:呵呵)'];
        var s = $("#inp").val();
        var str = a.map(function (item, index) {
          if (item.indexOf(s) != -1) { return item; }
        });
        console.log(str);
      })
    })
  </script>
</body>

</html>

运行截图:

img