javascript - JavaScript 中的命名参数

标签 javascript function

假设我有这样一个函数

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");

这可能是错误的,但您可能明白我的意思。我想指定属性的名称和值,这样我就不必担心传递未定义的值。我该怎么做?

也可以随意更改标题,我不知道这个问题应该叫什么。

最佳答案

jsFiddle Demo

当然,就用这个:

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/

相关文章:

javascript - 谷歌地图 : Apply Function to Multiple Shapes

javascript - d3.js 节点之间的链接不呈现为线

c - C中静态函数声明的区别

php - Codeigniter 根据 id 返回用户名

javascript - 使用插入的 HTML 中的参数调用 Javascript 函数

c++ - 如何修复 C++ DLL 中未解析的外部符号错误?

javascript - 在 React 的生命周期方法之外添加类名

javascript - 阻止链接执行其 href 路径

javascript - 如何在pdfmake中获取完整的网页pdf?

algorithm - 图算法判断图是否连通、二分、有环且是树