zoukankan      html  css  js  c++  java
  • => 应用在js回调函数中

      => 可以简化以前的回调函数的调用,具体来说:

     今后,几乎所有的回调函数都可用箭头函数简化

    比如:

        1. 所有回调函数都可: 去function改=>

        2. 如果函数体只有一句话: 可省略{}

          如果这一句话还是return,可省略return

        3. 如果只有一个参数: 可省略()

         但是,如果没有参数,必须保留空()

      更大用途: 箭头函数内外共用同一个this——取代bind

      特殊: 如果不希望内外共用this,就不能用箭头函数

        比如事件处理函数:

          elem.addEventListener("click",function(){this->elem})

          elem.addEventListener("click",()=>{ this->不是elem})

          变通解决:

          elem.addEventListener("click",e=>{ e.target->elem})

    var arr=[12,2,123,23,1,3];
      //arr.sort(function(a,b){return a-b;})
      arr.sort((a,b)=>a-b);
      console.log(String(arr));
    
      var newArr=arr.map(val=>val*2);
      console.log(String(newArr));
    
      var bob={
        sname:"Bob",
        friends:[
          "Jack","Rose","Tom","Jerry"],
        intr(){
          //this->bob
          this.friends.forEach(
            val=>console.log(
                  this.sname+" 认识 "+val)
          );
        }
      }
      bob.intr();
      var btns=document.getElementsByTagName("button");
      //this->window
      for(var i= 0,len=btns.length;i<len;i++){
        btns[i].addEventListener("click",
          //()=>alert(this.innerHTML)//错误
          e=>alert(e.target.innerHTML)
        )
      }
  • 相关阅读:
    js添加删除元素内容
    [H5]range对象的createRange方法
    [H5]range对象的clone方法
    [H5]range对象的setStart/setEnd方法
    [H5]range对象之selectNode等方法
    [H5]API之range对象
    上传本地Jar包到阿里云的云效私有仓库
    Alibaba Cloud Toolkit 一键部署插件使用入门
    关于mybatis 注意
    win10 docker 安装oracel11g
  • 原文地址:https://www.cnblogs.com/web-fusheng/p/6764073.html
Copyright © 2011-2022 走看看