我想在javascript中設置默認參數,所以我可以嗎?JavaScript在其功能中是否支持默認參數?
jm.toInt = function (num, base=10) {
return parseInt(num,base);
}
我想在javascript中設置默認參數,所以我可以嗎?JavaScript在其功能中是否支持默認參數?
jm.toInt = function (num, base=10) {
return parseInt(num,base);
}
ES6支持default parameters,但ES5沒有,你可以使用transpilers(如babel)使用ES6今天
這是part of ES6,但截至目前,not widely supported所以你可以做這樣的事情
jm.toInt = function(num, base) {
return parseInt(num, arguments.length > 1 ? base : 10);
}
使用'arguments.length> 1?'有什麼好處,而不是簡單的'base?' –
@AlexandruSeverin無...你可以使用上面的任何一個格式在這種情況下.... –
ofcourse還有一個辦法!
function myFunc(x,y)
{
x = typeof x !== 'undefined' ? x : 1;
y = typeof y !== 'undefined' ? y : 'default value of y';
...
}
你的情況
jm.toInt = function(num, base){
return parseInt(num, arguments.length > 1 ? base: 'default value');
}
隨着邏輯或,默認值是可能的。
jm.toInt = function (num, base) {
return parseInt(num, base || 10);
}
使用typeof
,以驗證參數存在(括號內添加,使其更易於閱讀):
jm.toInt = function (num, base) {
var _base = (typeof base === 'undefined') ? 10 : base
return parseInt(num, _base);
}
https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Functions/default_parameters ...查看瀏覽器支持... –