如何在Javascript中为可选参数设置默认值

How do I set the default value for an optional argument in Javascript?

本文关键字:参数 设置 默认值 Javascript      更新时间:2023-09-26

我正在编写一个带有可选参数的Javascript函数,并且我想为可选参数分配一个默认值。我如何给它赋一个默认值?

我想应该是这样,但是行不通:

function(nodeBox,str = "hai")
{
    // ...
}

如果str为null、undefined或0,则此代码将其设置为"hai"

function(nodeBox, str) {
  str = str || "hai";
.
.
.

如果你还需要传递0,你可以使用:

function(nodeBox, str) {
  if (typeof str === "undefined" || str === null) { 
    str = "hai"; 
  }
.
.
.

ES6更新 - ES6 (ES2015规范)允许默认参数

下面的代码在ES6 (ES015)环境下可以正常工作…

function(nodeBox, str="hai")
{
  // ...
}

你也可以使用ArgueJS:

function (){
  arguments = __({nodebox: undefined, str: [String: "hai"]})
  // and now on, you can access your arguments by
  //   arguments.nodebox and arguments.str
}