ES6对函数参数设置默认值

使用=号对参数设置默认值

function myfunc(message, flag = false) { 
  // Code 
} 

myfunc("hello");

当flag没有传递值时,默认为false

也可以使用解构赋值:

function myfunc({ start = 5, end = 1, step = -1 } = {}) {
}

使用{}赋值给命名参数,这可以让我们直接调用空参数的函数,

myfunc();

ES6之前对函数参数设置默认值

es6之前的JavaScript是不支持对函数参数设置默认值,我们只能在函数内做处理,有很多种方法,这里提供一种:

function myfunc(a, b) {
  a = typeof a ! 'undefined' ? a : 1;
  b = typeof b !
 'undefined' ? b : 'default string';
  ...
}

需要注意的是typeof null == 'object',所以上面参数是运行传null的,不传值为undefined,这时使用默认值。

出处:CSDN


评论关闭
IT虾米网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!

JavaScript(ES6/ES6之前)对函数参数设置默认值