访问同一对象中的JavaScript对象文字值
可能重复:访问同一对象中的JavaScript对象文字值,javascript,javascript-objects,Javascript,Javascript Objects,可能重复: 是否有任何方法可以访问同一对象文本中的属性名称的值?大概是这样的: myFunction.init({ varOne: 'something', varTwo: this.varOne + 'something else' }) 不,无法从定义本身访问当前正在定义的对象文本 如果要基于其他属性的值设置属性,则需要基于某些外部值(不是属性本身)或在定义对象文字后运行初始化器函数,该函数可以基于其他属性的值设置某些属性。Ok,非常感谢您的快速回复!我必须创建一个外部变
是否有任何方法可以访问同一对象文本中的属性名称的值?大概是这样的:
myFunction.init({
varOne: 'something',
varTwo: this.varOne + 'something else'
})
不,无法从定义本身访问当前正在定义的对象文本
如果要基于其他属性的值设置属性,则需要基于某些外部值(不是属性本身)或在定义对象文字后运行初始化器函数,该函数可以基于其他属性的值设置某些属性。Ok,非常感谢您的快速回复!我必须创建一个外部变量并在对象中访问它。有关更多示例,请参阅:当然可以。使用getter和setter,或者通过创建函数来修复对象的范围。不知道为什么另一个答案是picked@OzLodriguez-你为什么不发布一个关于这个问题的答案或一个指向jsfiddle/codesandbox/etc的链接?@AdrianFlorescu,@BlueYoshi在对接受答案的评论中发布了一个例子。但是,这种方法有一个陷阱@OzLodriguez<当使用getter方法更改
varOne
时,原始问题中的code>varTwo将始终更新。这与我所期望的问题中的行为不同(假设这是可能的)。如果问题中的代码实际工作,我希望它使用varOne
初始化varTwo
一次,并且如果varOne
将来发生更改,则不会更改varTwo
。