1. 程式人生 > 實用技巧 >es6箭頭函式

es6箭頭函式

<script type="text/javascript">

    let func1=function(){
        console.log(this);
        console.log('普通無參匿名函式');
    }
    func1();

    let func2=()=>console.log('箭頭函式');
    func2();

    // 當然一個引數的時候,括號可以省略(我個人習慣,還是不省略,不然看著彆扭)
    let func3=a=>console.log(a);
    func3('ccc')

    
// 兩個或者兩個以上引數情況 (括號不能省略) let func4=(a,b)=>a+b; console.log(func4(1,1)); let func5=(a,b)=>{ console.log(this) return a+b; } console.log(func5(1,1)); // 重要特性 箭頭函式沒有this,所以this是定義的時候,外部所在的物件是它的this。不是呼叫的時候的this; // 尋找的時候 找的是外部的function 假如沒有的話 就是this,假如有的話 就是外部function所在物件;
let name='marry'; let obj={ name:'jack', age:11, getName:function(){ // console.log('xxx:',this) document.getElementById('btn').onclick=function(){ console.log('按鈕:'+this); } return this.name; }, getName2:()
=>{ document.getElementById('btn').onclick=()=>{ console.log(this.name); } // console.log('yyy:'+this); } } // console.log(obj.getName()); console.log(obj.getName2()); </script>