您的位置:主页 > web笔记 >

web笔记 前端面试题总结

2018-12-17作者:自己来源:落花听雨次阅读

1.call和apply用法
   let a ={
            value:1
        }
        function getValue(name,age){
          console.log(name)
          console.log(age)
          console.log(this.value)
        }
        getValue.call(a,'tingyu','26')
        getValue.apply(a,['tingyu','26'])
    call和apply会改变this的指向,上面的例子中将this指向了对象a,区别是,call的后面参数为多个参数,apply为数组

2.map数组遍历操作
  [1,2,3].map((v) => v+1)
  map可以对数组进行遍历和修改,比for循环遍历要方便一些

3.数组去重多种方法
  ①//indexOf去重法
      function find() {
        var newArray = [];
        for(var i=0;i<arr.length;i++){
          if(newArray.indexOf(arr[i])==-1){
            newArray.push(arr[i])
          }
        }
        console.log(newArray)
      }
    数组的 indexOf方法用来确定某个值在数组里的索引,如果不存在,则返回-1
  ②//es6 数据结构Set去重法
      var arr1=[...new Set(arr)];
    利用Set中值的唯一性来做数组去重
4.数组排序n种算法
  ①//冒泡排序
        function bubbleSort(arr){
              for(var i=0;i<arr.length-1;i++){
                       for(var j=0;j<arr.length-1;j++){
                            if(arr[j+1]<arr[j]){
                                var temp;
                                temp=arr[j];
                                arr[j]=arr[j+1];
                                arr[j+1]=temp;
                            }
                       }
                 }
                 return arr
        }
     原理是将当前项和后面一项作比较,如果不符合想要的顺序,就将这两项的顺序调换
  ②// sort排序
        var arr2=[3,1,4,6,5,7,2];
            arr2.sort(function(a,b){
              return a-b
            })
   如果是从小到大是a-b,如果是从大到小是b-a

凡本站注明“本站”或“投稿”的所有文章,版权均属于本站或投稿人,未经本站授权不得转载、摘编或利用其它方式使用上述作品。本站已授权使用的作品,应在授权范围内使用,并注明“来源:某某站”并附上链接。违反上述声明者,本站将追究其相关法律责任。

编辑: 关键词: 面试 前端

网友评论

随机推荐

图文聚集

热门排行

最新文章