ES6 -箭頭函數,javascript箭頭函數 對象的函數解構 ...
ES6 -箭頭函數:
//es6 中的箭頭函數和擴展 //es5的寫法 // function add(a,b){ // return a + b; // } // add(1,2); //3 function add1(a,b=1){ if(a==0){ throw new Error('a is zero'); } return a+b; } //console.log(add1(0)) //Uncaught Error: a is zero 主動拋出異常 //嚴謹模式 function add(a,b){ 'use strict' return a + b; } console.log(add(1)) //NaN console.log(add(1,2)) //3 // 獲取參數個數 console.log(add.length) //2 function add2(a,b=1){ return a + b; } console.log(add2.length) //1 獲取的參數是必須傳遞參數的個數 當給a複製後 輸出 0 //箭頭函數 //箭頭函數中不允許使用new的 箭頭函數中不能寫構造函數 // 方法體只有一行的時候 不用加上花括弧 var add3 = (a,b=1) => a+b; console.log(add3(2)) //3 // 方法體有多行的時候 需要加上花括弧 var add4 = (a,b) => { console.log( "---"); return a + b; } console.log(add4(1,2)) //3
對象的函數解構
//對象的函數解構 let json = { 'a': 'ananiah', 'b': '傑森' } console.log(json.a) // 輸出 ananiah function fun({a,b = 'default'}){ console.log(a,b) //輸出 ananiah 傑森 } fun(json);