查询字符串是否已存在

在一个网站上投简历,公司投得多了就要一个个查,对比哪些公司已投过,有点费时间,

写一个小查询找出准备投递公司是否在已投列表中:

<input type="text" placeholder="请输入公司名称" id="company"/>

<script type="text/javascript">

function s(fn){
  return fn.toString().split(' ').slice(1,-1).join(' ') + ' ';
}

var str=s(function(){
飞牛集达
亚盟
平安好房-平安集团重要成员
平安好车
平安金融科技
洋码头
唯品会
美味七七
福丽社
爱奇艺
网址导航
银联商务
申彤鱼鱼信息
易传媒
易宝支付
饿了么
安居客
当天贷
酷趣
中和软件
施耐德
楼口电商
民宝投资
哔哩哔哩
精灵网
搜狐集团
东方财富
房多多上海研发中心
tradehero
德邦
大众点评网
易跃移动
新实数码
拍拍贷
Ping++
NDPmedia
外卖超人
酷趣
啥么什}),
arr=str.replace(/^s+|s+$/g,'').replace(/s+/gm," ").split(" ");

var companyinput=document.querySelector("#company");
companyinput.onblur=function(){
var txt=companyinput.value.replace(/^s+|s+$/g,'').replace(/s+/gm," "),
len=arr.length,
max=Math.ceil(len/2);


console.time("timmer1");
for(var i=0; i<len; i++){
if(arr[i]==txt){
console.log(txt);
break;
}
}
console.timeEnd("timmer1");

console.time("timmer");
for(var i=0;i<max; i++){
if(arr[len-i]==txt||arr[i]==txt){
console.log(txt);
break;
}
}
console.timeEnd("timmer");
}

本来想让查询更快一点,取半数长度,首尾同时对比,测试下来,这样更慢

原文地址:https://www.cnblogs.com/uh-huh/p/4143804.html