1. ES5方法(默认参数与可选参数)
函数定义时,给函数传入一个“对象”类型的形参,具体实现时,为对象形参添加属性,每个属性相当于函数的一个参数。
不设置默认参数时,参数赋值如下:
var para=args.para;
设置默认参数时,参数赋值如下:
var para=args.para || 默认值 ;
完整的代码示例:
var CookieUtil = {
set: function(args) {
var name = args.name || "张三";
var value = args.value;
var expires = args.expires;
var path = args.path || "/bags/";
var domain = args.domain;
var secure = args.secure;
}
}
CookieUtil.set({
name: "name",
value: "Nicholas",
path: "/books/projs/",
domain: "www.wrox.com",
expires: new Date("January 1, 2010")
});
2. ES6方法(默认参数)
函数定义时传入形参对象,参数直接赋予默认值。但注意,当以参数列表形式设置默认值时,赋值方式是按序赋值。
代码示例:
function doSome({a,b=2,c}){
console.log(a,b,c);
}
doSome({a:5,c:22})
// 5 2 22
//参数列表方式
function doSome(a,b=2,c){
console.log(a,b,c);
}
doSome(5,22)
// 5 2 22
参考:
【1】js参数对象实现可选参数和参数默认值