函數在JavaScript中只能返回一個值。那麼我們如何模擬從函數返回多個值呢?

當我們調用JavaScript中的函數時,只能使用return語句返回一個值:

const getAge = () => {
    return 37
}

const getName = () => {
    return 'Flavio'
}

我們如何從函數中返回多個值呢?

一個簡單的技巧是返回一個數組:

const getDetails = () => {
    return [37, 'Flavio']
}

這樣也是可以的,我們可以通過數組解構來獲取這些值:

const [age, name] = getDetails()

現在我們擁有了包含這些值的agename變量。

請注意,在const [age, name] = getDetails()中定義它們的順序是很重要的。

我們也可以返回一個對象並使用對象解構:

const getDetails = () => {
    return { 
        age: 37, 
        name: 'Flavio'
    }
}

const { age, name } = getDetails()

在這種情況下,const { age, name } = getDetails()中的agename的順序不再重要,因為它們是命名參數。