ES6從入門到進階 第四節 箭頭函式 三個點運算子 ...
阿新 • • 發佈:2018-12-18
<!DOCTYPE html> <html> <head> <title>函式</title> </head> <body> <script type="text/javascript"> /* 函式的預設引數 擴充套件運算子 三個點... 可以展開陣列 */ function show(a, b = '我'){ console.log(a,b); } show('wwoshi', '你'); show("nishi"); //函式的引數已經是定義的變數,不能重複被定義 和for迴圈不一樣 function show1(a) { let a = 12; console.log(a); } //show1(); //Identifier 'a' has already been declared let arr = ['apple', 'orange', 'pear']; console.log(arr); console.log(...arr);//apple orange pear 散開 function show2(...a) { console.log(a); } show2([1,2,2,3,3]); function show3(a, b, c) { console.log(a, b, c); } show3(...[1,2,2]); function show4(a, b, ...c) { console.log(a, b, c); } show4(1, 2, 3, 4); let arr1 = [1,3]; let arr2 = [...arr1]; console.log(arr2);//不是引用陣列,是複製陣列 /* 箭頭函式 ()=> {語句} (a,b)=> a+b; 這是return的值 this指向 :定義函式所在的物件,不是執行時所在的物件 箭頭函式沒有arguements 箭頭函式不能當建構函式 */ let show5 = (a = 12, b = 5)=>{ console.log(a, b); } show5(); let json = { id: 1, show: function(){ //console.log(this.id); 1 // setTimeout(function(){ // console.log(this.id);//undefined // }, 200); setTimeout(()=>{console.log(this.id)}, 200); //1 } } json.show(); </script> </body> </html>
/* 箭頭函式 ()=> {語句} (a,b)=> a+b; 這是return的值 this指向 :定義函式所在的物件,不是執行時所在的物件 箭頭函式沒有arguements 箭頭函式不能當建構函式 */