• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录

joer717

  • 博客园
  • 联系
  • 订阅
  • 管理

公告

View Post

总结

1.箭头函数和普通函数的区别

箭头函数是匿名函数,不能作为构造函数,不能使用new

箭头函数不绑定arguments,取而代之用rest参数...解决

箭头函数不绑定this,会捕获其所在的上下文的this值,作为自己的this值

箭头函数没有原型属性

2.数组去重

var newArray = [];
    function uniq(array){
        for(var i=0;i<array.length;i++){
            if(newArray.indexOf(array[i])<=-1){
                newArray.push(array[i])
            }
        }
        return newArray;
    }
    var arr = [1,2,3,4,21,3,5,2,1,2,43,23]
    console.log('第一种去重方法'+uniq(arr).toString())


    function uniq2(array){
        array.sort();
        let arrayNew = [array[0]];
        for (var i=1;i<array.length;i++) {
            if(array[i] !== arrayNew[arrayNew.length -1 ]){
                arrayNew.push(array[i])
            }
        }
        return arrayNew;
    }

    console.log("第二种去重方法"+uniq2(arr).toString())


    function  uniq3(array) {
          var newArray3 = [];
          for(var i=0;i<array.length;i++){
              if(array.indexOf(array[i])=== i){
                  newArray3.push(array[i])
              }
          }
          return newArray3;
    }
    console.log("第三种去重方法"+uniq3(arr).toString())

3.深拷贝和浅拷贝

就是假设B复制了A,

当修改A时,看B是否会发生变化,如果B也跟着变了,说明这是浅拷贝,拿人手短,

如果B没变,那就是深拷贝,自食其力。

function deepclone(obj){

     var newobj = JSON.stringify(obj)

     var cloneobj = JSON.prase(newobj)

      return  cloneobj

}

 

还可以用extend方法  依赖与jquery

$.extend([deep],target,object1,........)

b=$.extend(true,[],a)

posted on 2019-04-10 21:33  joer717  阅读(105)  评论(0)    收藏  举报

刷新页面返回顶部
 
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3