在开发时,很多开发者都会用到for语句与数组做循环来做查询;但手机的性能对循环数据一旦超过5000条数据(例如I9008手机)将会很吃力,所以建议开发者用for语句来做循环查询时,最好用以下的方法来做查询:
把
for(var i = 0, len = array.length; i < len; i++){
if(array[i] == key){
………
}
}
改为:
/*JS数组快速模糊查找*/
function JS_cruel_search(array, key){
var re = new RegExp(key);
//先把匹配的字符串改过为"┢",然后除了逗号与"┢",所有的字符都变成空
var data = array.toString().replace(re,"┢").replace(/[^,┢]/g,"");
var n = data.indexOf("┢");
return n; //这里返回查询数组中的位置
}
就是减少用一些耗费性能的方法,用一些js内置的方法来提高运行的性能.