js函數的多種方式

在ES2018中,函數已經是一個很複雜的體系了,整理一下

第一種,普通函數:用function關鍵字定義的函數。

示例:

function foo(){
    // code
}

第二種,箭頭函數:用 => 運算符定義的函數。
示例:

const foo = () => {
    // code
}

第三種,方法:在class中定義的函數。

示例:

class C {
    foo(){
        //code
    }
}

第四種,生成器函數:用function * 定義的函數。

示例:

function foo*(){
    // code
}

第五種,類:用class定義的類,實際上也是函數。

示例:

class Foo {
    constructor(){
        //code
    }
}

第六/七/八種,異步函數:普通函數、箭頭函數和生成器函數加上async關鍵字。

示例:

async function foo(){
    // code
}
const foo = async () => {
    // code
}
async function foo*(){
    // code
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章