Javascript 无法使用破折号访问对象属性

Javascript 无法使用破折号访问对象属性,javascript,node.js,mongodb,mongoose,Javascript,Node.js,Mongodb,Mongoose,我对从javascript对象访问属性感到困惑 在这个场景中,我使用Node.js和Mongoose from find()方法 我的目标: { _id: 52f541c7d2750f2d2cbf6d4a, descriptions: { 'en-us': 'Lorem ipsum', 'pt-br': 'Os acessórios já não são mais meros coadjuvantes na harmonia de uma combinação, mas

我对从javascript对象访问属性感到困惑

在这个场景中,我使用Node.js和Mongoose from find()方法

我的目标:

{ 
_id: 52f541c7d2750f2d2cbf6d4a,
descriptions: { 
    'en-us': 'Lorem ipsum',
    'pt-br': 'Os acessórios já não são mais meros coadjuvantes na harmonia de uma    combinação, mas sim a sua assinatura de estilo, dando um caprichoso arremate ao que você escolheu ser pro dia de hoje.' 
},
id: '1',
ids: { 'en-us': 'accessories', 'pt-br': 'acessorios' },
name: 'accessories',
names: { 'en-us': 'Accessories', 'pt-br': 'Acessórios' },
images: { 
    header: '/images/categories/86e3451ca755d31234e5fcad4af055f1',
    unset: [] 
},
position: { x: 650, y: 735 },
active: true 
}
事情是这样的: 我可以访问除object.namesobject.descriptionsobject.ids之外的任何属性,它返回“未定义”

但是当我使用Object.get('property')访问属性时,我得到了预期的回报

Object.ids = undefined

Object['ids'] = undefined

Object.get('ids') = { 'en-us': 'accessories', 'pt-br': 'acessorios' }
我是不是遗漏了什么?可能是特殊字符(在本例中为破折号…?)出现问题


希望你们能帮助我。致以最良好的祝愿

在将
\u id
值加引号(
\u id:'52f541c7d2750f2d2cbf6d4a'
)后,它对我有效:。感谢您的回复!这种方法是可行的,但是_id属性是从mongodb返回的,所以我想我无法更改它…那些给您带来问题的字段是在Mongoose模式中定义的吗?是的,但问题是访问它的方式。只有使用Object.get('param')我才能这样做。。。总比什么都没有好,因为我找不到真正的问题/解决方案