寝て起きて寝て

プログラミングが出来ない情報系のブログ

ES6のデフォルト引数メモ

ES6では関数にデフォルトで引数をつけることができる

ES5

function Wallet(money){
    if(!money){
        money = 1000;
    }
    return money;
}

Wallet();//1000

function Wallet(money = 1000){
    if(!money){
        money = 1000;
    }
    return money;
}

Wallet(500);//500

ES6
デフォルト値を設定するには引数に設定したい値を代入する

function Wallet(money = 1000){
    return money;
}

Wallet();//1000


function Wallet(money = 1000){
    return money;
}

Wallet(500);//500

注意点

nullを引数に設定するとデフォルト値は設定されない 意図的にnullを設定すると空になる

function Wallet(money = 1000){
    return money;
}

Wallet(null);//返り値なし

また、undefinedを設定するとデフォルト値が設定される

function Wallet(money = 1000){
    return money;
}

Wallet(undefined);//1000

その他

てか引数が2つ合った時って指定しなくてもエラーにならないのね・・・

function user(name,age){
    return [name,age];
}

user('test');//["test",null]

設定しなかった場合はデフォルト値はちゃんと入る

function user(name,age=100){
    return [name,age];
}

user('test');//["test",100]