【发布时间】:2014-08-12 05:24:17
【问题描述】:
所以如果我有一个像这样定义的对象:
var object = {
prop1: 'val1',
prop2: 'val2',
prop3: {
subprop1: 'subval1',
subprop2: 'subval2',
subprop3: 'subval3'
}
}
我想知道是否有办法设置“默认”值,所以如果我打电话:
object.prop3
我不想得到:
Object {subprop1: "subval1", subprop2: "subval2", subprop3: "subval3"}
相反,我想:
defaultsubval
任何帮助将不胜感激。
【问题讨论】:
-
您到底想达到什么目的?是否要实现自定义属性 getter?
-
@p.s.w.g 我更喜欢尽可能内联的东西......例如,如果我能这样做,我会很高兴: var object = { prop: 'defaultval' { subprop: 'subval' } };但我知道我不能那样做……
-
不,这不能做。当您访问
object.prop3时,它怎么会知道您是在默认情况下停在那里还是要实际从对象中获取属性?如果您确实继续使用另一个属性,它应该来自对象还是您返回的默认值? -
@cookiemonster 也许向前看,看看是否有对子对象的请求?我真的不知道怎么写,如果有的话。
-
@LeinardoSmtih:它怎么知道对
object.prop3结果的属性请求应该来自默认值或子对象?我只是在解释为什么不能这样做。
标签: javascript json nested default-value javascript-objects