假设我有这样一个函数
function myFunc(a, b, c)
{
if(a!=undefined) this.a = a;
if(b!=undefined) this.b = b;
if(c!=undefined) this.c = c;
}
我只想设置 b 的值,然后我可以做这样的事情。
myFunc(undefined, "some Value for b", undefined);
但我想知道是否有一种方法可以做这样的事情来设置 b 的值
myFunc(b:"some value for b");
这可能是错误的,但您可能明白我的意思。我想指定属性的名称和值,这样我就不必担心传递未定义的值。我该怎么做?
也可以随意更改标题,我不知道这个问题应该叫什么。
最佳答案
当然,就用这个:
function myFunc(options)
{
if(typeof(options['a']) != "undefined") this.a = options['a'];
if(typeof(options['b']) != "undefined") this.b = options['b'];
if(typeof(options['c']) != "undefined") this.c = options['c'];
}
然后调用它
var func = new myFunc({b:"some value for b"});
console.log(func.b);//"some value for b"
关于javascript - JavaScript 中的命名参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15508282/