阿里校园招聘笔试题


编写搜索框组件过程中,要求搜索结果实时响应,但是每次都向服务器发送请求会给服务器造成压力。所以要求在用户不断点击搜索按钮的过程中,实现一个通用函数,接受一个参数action代表一个函数,第二个参数threshold用于指定频率,返回一个新的函数。当按钮被点击时候,如下所示:

const fn=function(func,threshold){

}

const triggerSearch=fn(

(val)=>{const{onSearch}=this.propsonSearch(val)},

300)

triggerSearch(searchText);

<!DOCTYPE html>
<html>
<head>
    <title></title>
</head>
<body>
<button onclick="triggerSearch('cc')">search</button>
<script type="text/javascript">
    var int=0;
    function fn(search,threshold){                
        var triggerSearch=function(txt){    
            if(int){
                clearInterval(int);
            }
            //用j计数,如果达到所设定的threshold则执行search函数
            var j=0;    
            var f2=function(){
                j+=100;
                if(threshold<=j){
                    j=0;
                    search(txt);
                    clearInterval(int);
                }
            }
            int=setInterval(f2,100);
        }
        return triggerSearch;
    }
//模拟向后台发送查询请求----------------
function search(txt){
    console.log("send message to server: "+txt);
}
var triggerSearch=fn(search,1000);
</script>
</body>
</html>

优质内容筛选与推荐>>
1、[NOIP2017] 时间复杂度
2、Linux基础知识之挂载详解(mount,umount及开机自动挂载)
3、环境搭建 - Maven(Windows)
4、图
5、初识接口测试


长按二维码向我转账

受苹果公司新规定影响,微信 iOS 版的赞赏功能被关闭,可通过二维码转账支持公众号。

    阅读
    好看
    已推荐到看一看
    你的朋友可以在“发现”-“看一看”看到你认为好看的文章。
    已取消,“好看”想法已同步删除
    已推荐到看一看 和朋友分享想法
    最多200字,当前共 发送

    已发送

    朋友将在看一看看到

    确定
    分享你的想法...
    取消

    分享想法到看一看

    确定
    最多200字,当前共

    发送中

    网络异常,请稍后重试

    微信扫一扫
    关注该公众号