是否可以将一个对象的键设置为同一对象$thumbnailContainer
中另一个对象的值?thumbnailImg
gallerySelectors
例子:
var gallerySelectors = {
'$thumbnailContainer' : $('#thumb'),
'thumbnailImg' : this.$thumbnailContainer.find('img')
};
是否可以将一个对象的键设置为同一对象$thumbnailContainer
中另一个对象的值?thumbnailImg
gallerySelectors
例子:
var gallerySelectors = {
'$thumbnailContainer' : $('#thumb'),
'thumbnailImg' : this.$thumbnailContainer.find('img')
};
不,不幸的是,没有。幸运的是,替代方案同样简单:
var gallerySelectors = {
$thumbnailContainer: $('#thumb')
};
gallerySelectors.thumbnailImg = gallerySelectors.$thumbnailContainer.find('img');
如果问题是您想内联传递对象,您也可以创建一个函数来为您执行此操作。
不,因为this
在你展示的情况下不会绑定到对象。
我不认为有办法做到这一点。
你可以试试
var gallerySelectors = {
'$thumbnailContainer' : $('#thumb'),
'thumbnailImg' : gallerySelectors.$thumbnailContainer.find('img')
}; ^--------------- NOTE!!!
但我不确定我是否会相信它可以在任何地方工作。我想你必须查看语言规范,看看成员是否总是保证按顺序初始化。
我会采取简单的路线:
var gallerySelectors = {
'$thumbnailContainer' : $('#thumb'),
'thumbnailImg' : $('#thumb').find('img')
};