【发布时间】:2013-03-19 19:04:42
【问题描述】:
假设我有这样的功能
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");
这可能是错误的,但您可能明白我的意思。我想指定属性的名称和值,这样我就不必担心传递未定义的值。我该怎么做?
也随意更改标题,我不知道这个问题应该叫什么。
【问题讨论】:
-
“我不知道这个问题应该叫什么”。迄今为止我生命中最有趣的 stackoverflow 时刻......
-
this.a等的意图是什么?您没有实例化对象,因此this将是全局对象。 -
@bfavaretto 是的,我正在使用这个函数来创建对象,尽管这里没有显示
-
"你的意思是说我给出的例子确实有效吗?" 只有当你改变语法以使用对象文字表示法时(即在@987654328 周围添加
{}@. 关键概念是您将 Object 作为参数传递。可以使用 object literal 表示法创建对象,如下所示:{ propA: 'valueA', propB: 'valueB' }
标签: javascript function