javascript对象内容通过引用分配,这可能吗?

javascript对象内容通过引用分配,这可能吗?,javascript,object,Javascript,Object,我想将数据存储在两个不同的结构化对象中,例如: MS = { waypoints: { 'wpg0' : 'content', 'id' : 'uuid1' } }; InvertedMS = { 'uuid1': { 'wpg0' : 'content' } }; 当“内容”在两个对象中的一个对象中更新时,是否(以及如何)以一种方式在两个对象中更

我想将数据存储在两个不同的结构化对象中,例如:

MS = {              
    waypoints:
        { 'wpg0' : 'content',
          'id' : 'uuid1'
                    }
};

InvertedMS = {
    'uuid1': { 'wpg0' : 'content'
             }
};
当“内容”在两个对象中的一个对象中更新时,是否(以及如何)以一种方式在两个对象中更新它


是的,这是很有可能的。但您需要的是纯对象引用,而不是基本值。由于ECMAscript有效地只传递referencens,这几乎暗示了您想要什么。比如说

var sharedData = { };

waypoint = {
    wpg0: sharedData
};

InvertedMS = {
    uuid1: { 
        wpg0: sharedData
    }
};
现在,稍后如果您在
sharedData
中更改任何内容,对它的所有引用都将反映这些更改

sharedData.update = 42;

console.log( InvertedMS.uuid1.wpg0.update ); // 42

waypoint.wpg0.update = 82;

console.log( InvertedMS.uuid1.wpg0.update ); // 82

是的,这是很有可能的。但您需要的是纯对象引用,而不是基本值。由于ECMAscript有效地只传递referencens,这几乎暗示了您想要什么。比如说

var sharedData = { };

waypoint = {
    wpg0: sharedData
};

InvertedMS = {
    uuid1: { 
        wpg0: sharedData
    }
};
现在,稍后如果您在
sharedData
中更改任何内容,对它的所有引用都将反映这些更改

sharedData.update = 42;

console.log( InvertedMS.uuid1.wpg0.update ); // 42

waypoint.wpg0.update = 82;

console.log( InvertedMS.uuid1.wpg0.update ); // 82

感谢jAndy的回答,我创建了这个JSFIDLE,它用javascript(在对象内)演示了通过引用传递。感谢jAndy的回答,我创建了这个JSFIDLE,它用javascript(在对象内)演示了通过引用传递