zoukankan      html  css  js  c++  java
  • 蘑菇街一电话面试1

    说说你常用的技术栈?

    ajax解决跨域问题的方法?jsonp的主要实现原理?

    点击页面某个按钮,将原本一行显示的内容分成两行,如何实现?

    怎样实现段首缩进?值是什么?

    如何实现文本限制显示两行,多出来的用省略号表示?

    js ‘== ’ 和 ‘===’ 举个栗子 ?

    js数组去重的方法(至少说三种ES6 set,双层递归,排序后与左右两边进行比较)
    js中 字符串+数值 ‘3’+3 字符串-数值’3‘-3 字符数 ’a‘+3 = NaN

    数组去重

    方法一:先排序,后去重

    function delSame (arr){
        var arr1 = arr.sort();
        var res =[arr1[0]];
        
        var len = arr1.length;
        for(var i=1;i<len;i++){
            if(arr1[i]!==res[res.length-1]){
                res.push(arr1[i]);
            }
        }
        return res;
    }
    
     console.log(delSame([2,4,1,4]));
    

    res保存原数组的第一个数值,然后从arr中第二位开始的数字开始,和res中已经保存的数字进行比较,如果不重复,就把arr[i]加入res数组中去。

    方法二:

    Array.prototype.unique=function(){
        var res = [];
        var json = {};
    
        for(var i=0;i<this.length;i++){
            if(!json[this[i]]){
                res.push(this[i]);
                json[this[i]]=1;
            }
        }
        return res;
    };
    var arr = [112,112,34,'你好',112,112,34,'你好','str','str1'];
    console.log(arr.unique());
    

    1.如果arr[i]是第一次出现,就把它当做对象的属性,并赋值为1;
    2.继续遍历,每次去对象中找arr[i],如果存在这个属性,说明重复了;否则,将它加入对象并给新属性赋值为1,再推入res[]中

  • 相关阅读:
    C语言中 指针和数组
    C语言中 指针与结构体
    void指针、NULL指针和未初始化指针
    C语言中 指针、引用和取值

    别--------
    快速开发 jQuery 插件的 10 大技巧(转)
    采用预取(Prefetch)来加速你的网站(转)
    HttpWatch工具简介及使用技巧(转)
    iScroll框架的使用和修改
  • 原文地址:https://www.cnblogs.com/n2meetu/p/8886396.html
Copyright © 2011-2022 走看看