如何在对象中引用JavaScript对象键
How to reference a JavaScript object key within the object?
如何在对象本身中引用JavaScript散列键?例如,我希望能够实际使用"主题"键。我会用"this"指代"theme"吗?
window.EXAMPLE = {
config : {
theme: 'example',
image_path: '/wp-content/themes/' + this.theme + '/img/',
}
}
你可以使用一个方法:
window.EXAMPLE = {
config : {
theme: 'example',
image_path: function () {
return '/wp-content/themes/' + this.theme + '/img/';
},
}
}
当然,你必须通过EXAMPLE.config.image_path()
您可能也不应该在window
上定义东西,而只是使用当前作用域。
唯一的方法是使用函数:
。
windows.EXAMPLE {
config : {
theme: 'blah',
image_path: function () { return '/path/to' + this.theme }
}
}
如果不使用函数,则必须将其拆分为两个单独的赋值:
window.EXAMPLE = {
config : {
theme: 'example'
}
};
window.EXAMPLE.config.image_path = '/wp-content/themes/' + window.EXAMPLE.config.theme + '/img/';
当构造一个对象时(不是一旦它被创建,如Kyle的例子所示),我认为不可能访问对象的属性,因为它还不"存在",除非您使用函数或一些奇特的东西。
我也认为没有理由这样做,因为您可以在image_path
值中键入"example"
,或者您可以在定义之前创建一个变量作为"配置"常数:
var CONF_THEME = 'example';
window.EXAMPLE = {
config : {
theme: CONF_THEME,
image_path: '/wp-content/themes/' + CONF_THEME + '/img/'
}
}
相关文章:
- 面向对象JavaScript中的私有函数
- 对象 Javascript 中的标签无效 - 想要添加事件列表器
- 将字符串转换为对象 javascript/jquery
- 正在检查对象javascript中是否存在嵌套属性
- 时间-日期对象JavaScript getUTCMilliseconds
- 仅在对象(javascript)中解析值
- 使用对象(JavaScript或jQuery)填充选择下拉列表
- 引用另一个对象javascript中的对象
- 如何删除列表中的对象?Javascript nodejs和下划线
- 无法从日期对象javascript获取日期和月份
- 如何在if语句中使用对象-Javascript
- 对象javascript错误
- 对象Javascript的少数实例
- 位置对象Javascript
- 将字符串传递到对象javascript中
- 获取对象Javascript或jQuery的最后一个值
- 鼠标接近对象Javascript
- 这个mixins代码是书中的错误吗;面向对象JavaScript的原理”;
- 使用闭包编译器编写更好的面向对象JavaScript完整示例代码
- 访问对象javascript数组中的对象属性值