ES6基礎語法之函數(shù)介紹
一、函數(shù)參數(shù)的擴展
ES6支持參數(shù)的默認值:
function fn(name,age,sex="男") { console.log(`大家好,我是${name},性別${sex},今年${age}歲!`); } fn("劉德華",45); //大家好,我是劉德華,性別男,今年45歲!
傳遞undefined,取默認值:
function fn(name,sex="男",age) { console.log(`大家好,我是${name},性別${sex},今年${age}歲!`); } fn("劉德華",undefined,45); //大家好,我是劉德華,性別男,今年45歲!
不定參數(shù):不定參數(shù)用來表示不確定參數(shù)個數(shù):
function Add(...items) { // let sum = 0; // for(let item of items) // { // sum += item; // } // return sum; let sum = 0; for(var i = 0;i< items.length;i++) { sum += items[i]; } return sum; } let result1 = Add(1,2,3); let result2 = Add(1,3,5,7,9); console.log(result1); //6 console.log(result2); //25
二、箭頭函數(shù)
箭頭函數(shù)提供了一種更加簡潔的函數(shù)書寫方式,基本語法是:參數(shù) => 函數(shù)體
沒有參數(shù)的函數(shù)(參數(shù)部分需要有一對空括號):
let f = ()=>{console.log("hello,world!")} f(); //hello,world
等價于:
function f() { console.log("hello,world!"); } f(); //hello,world
只有一個參數(shù)的函數(shù)(參數(shù)部分不需要括號):
let f = num =>{ if(num%2 == 0) return "偶數(shù)"; else return "奇數(shù)"; } console.log(f(50)); //偶數(shù)
有多個參數(shù)的函數(shù)(參數(shù)部分需要括號):
let f = (a,b)=>{ let c = a+b; return c; } console.log(f(2,3)); //5
當只有一行語句,并且需要返回結果時,可以省略 {} , 結果會自動返回:
let f = (a,b) => a+b; console.log(f(2,3)); // 5
當箭頭函數(shù)要返回對象的時候,為了區(qū)分于代碼塊,要用 () 將對象包裹起來:
let f = (id,name) => {id: id, name: name}; let obj = f("001","劉德華"); // 報錯 console.log(obj);
let f = (id,name) => { return {id: id, name: name}; }; let obj = f("001","劉德華"); console.log(obj); //{id:"001",name:"劉德華"}
let f = (id,name) => ({id: id, name: name}); let obj = f("001","劉德華"); console.log(obj); //{id:"001",name:"劉德華"}
到此這篇關于ES6基礎語法之函數(shù)的文章就介紹到這了。希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
深入理解JavaScript系列(30):設計模式之外觀模式詳解
這篇文章主要介紹了深入理解JavaScript系列(30):設計模式之外觀模式詳解,外觀模式(Facade)為子系統(tǒng)中的一組接口提供了一個一致的界面,此模塊定義了一個高層接口,這個接口值得這一子系統(tǒng)更加容易使用,需要的朋友可以參考下2015-03-03JavaScript中__proto__與prototype的關系深入理解
本文將討論下對象的內部原型(__proto__)和構造器的原型(prototype)的關系,需要了解更多的朋友可以參考下2012-12-12