1.写个防抖函数, 有什么问题  function debounde(handler, delay) {    var time;    return function() {        var _self = this;        var _args = arguments;        time && clearTimeout(time);        time = setTimeout(() => {            handler.call(_self, _args);        }, delay)    }} 2.封装个组件, Vue / React / 原生JS  点击组件时弹出组件的位置信息,并在下方出现一个div 3.怎么学前端的,vue双向绑定 4.表单中的input,id和name的区别 5.跨域,解决方案 6.css引入方式,选择器优先级 7.原型链 8.JS的模块化方案,CommonJS, ES6 Modle区别 9.http请求方法,post和put区别 10.异步请求方案 11.垂直居中 12.算法:区间合并 输入: [[1,6],[2,7],[23,34],[8,15]]   输出: [[1,7],[8,15],[23,34]]  var merge = function(arr) {    if (arr.length <= 1) {        return arr;    }    var arr1 = arr.sort((a, b) => {return a[0] - b[0]});    var res = [];    let j = 1;    let cur = arr1[0];    while (j < arr1.length) {        let next = arr1[j];        if (cur[0] <= next[0] && cur[1] >= next[0]) {            if (next[1] >= cur[1]) {                cur = [cur[0], next[1]];            } // 前后能合并            j++; // 前者包含后者,跳过        } else if (cur[1] < next[0]) {            res.push(cur);            cur = arr[j];            j += 1;            if (j == arr1.length) {                res.push(cur);                break;            }        }    }    return res;}/** * input = [[1,3], [2,6], [15,18], [8,10]] * output = [[1,6],[8,10],[15,18]] */var input = [[1,3], [2,6], [15,18], [8,10]];var output = merge(input);console.log(output)
点赞 0
评论 0
全部评论

相关推荐

浩浩没烦恼:一二面加起来才一个小时? 我一面就一个小时多了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务