1 //箭頭函數的一個好處是簡化回調函數 2 //箭頭函數沒有參數,就使用圓刮號代表參數部分; 3 var f = () =>5; 4 console.log(f()); 5 //兩個參數的情況,代碼塊只有一條語句,可以省略{} 6 var f = (a,b)=> console.log(a+b); 7 f(1,3); 8 //兩個參數的情況,代碼塊只有一條語句,且有return語句;可以省略{}和return; 9 var f = (a,b)=>a + b; 10 console.log(f(1,4)); 11 //只有一個參數的情況,省略刮號,省略{} 12 var f = v=>5; 13 console.log(f()); 14 // var result = values.sort((a,b)=> a-b); 15 //代碼庫有多個語句,可以省略掉functon 16 var t = (a,b) =>{ 17 if(a > b) 18 console.log(1); 19 else 20 console.log(-1); 21 } 22 t(6,5); 23 /*some() 方法測試數組中的某些元素是否通過由提供的函數實現的測試。如果找到了這樣一個值, 24 some 將會立即返回 true。否則,some 返回 false; 25 callback 被調用時傳入三個參數:元素的值,元素的索引,被遍歷的數組。*/ 26 var f = [2,5,8,10,15].some(m=>m>10); 27 console.log(f); 28 /*every() 方法測試數組的所有元素是否都通過了指定函數的測試。every 方法為數組中的每個元素 29 執行一次 callback 函數,直到它找到一個使 callback 返回 false(表示可轉換為布爾值 false 的值) 30 的元素。如果發現了一個這樣的元素,every 方法將會立即返回 false。否則,callback 為每一個元素返回 31 true,every 就會返回 true。*/ 32 var f = [12,2,5,6,4].every((value,key,arr)=>value > 10); 33 console.log(f); 34 /*filter() 方法創建一個新數組, 其包含通過所提供函數實現的測試的所有元素。filter 為數組中的每 35 個元素調用一次 callback 函數,並利用所有使得 callback 返回 true 或 等價於 true 的值 36 的元素創建一個新數組,filter 不會改變原數組。 37 */ 38 var f = [12,5,3,45,30].filter((value,key,arr)=>value > 20); 39 console.log(f); 40 /*map() 方法創建一個新數組,其結果是該數組中的每個元素都調用一個提供的函數后返回的結果。map 41 方法會給原數組中的每個元素都按順序調用一次 callback 函數。callback 每次執行后的返回值 42 (包括 undefined)組合起來形成一個新數組。callback 函數會被自動傳入三個參數:數組元素,元素索引,原數組本身。 43 */ 44 var t = [1,3,5].map(x =>x * x); 45 console.log(t);