我有以下javascript对象:
var endpoints = {
User: {
endpoint: '/api/v1/users/%s',
subResources: {
profile: {
// IN BELOW LINE I WANT TO ACCESS PARENT OBJECT'S Property
endpoint: endpoints.User.endpoint + '/profile'
}
}
}
}
此对象有一个名为“User”的对象,该对象具有名为endpoint
的属性,我想在其名为subResources.endpoint
的子对象中访问此属性。
答案 0 :(得分:5)
这是不可能的,因为endpoints
对象本身尚未完全形成。
因此,您可以分两步完成此操作,例如
var endpoints = {
User: {
endpoint: '/api/v1/users/%s',
subResources: {}
}
};
endpoints.User.subResources.profile = {
endpoint: endpoints.User.endpoint + '/profile'
};
答案 1 :(得分:1)
使用方法/功能的另一种方法是:
var endpoints = {
User: {
endpoint: '/api/v1/users/%s',
subResources: {
profile: {
endpoint: function(){
return endpoints.User.endpoint + '/profile';
}
}
}
}
};