使用node.js中的JavaScript从JSON对象获取和设置文本内容

时间:2012-09-02 21:48:39

标签: javascript xml json parsing node.js

背景信息:我正在使用node.js,这是一个服务器端脚本。

话虽如此,这就是问题所在。使用result时,我有一个JSON对象eyes.inspect(),看起来像

{
user: [
    {
        foods: {
            food: [
                {
                    #: 'McDonalds',
                    @: { type: 'string' }
                },
                {
                    #: 'Seafood Topped Salmon',
                    @: { type: 'string' }
                }
            ]
        },
        email: '****@******.edu',
        name: 'Leo'
    },
    {
        email: '****@******.edu',
        food-list: {
            food: [
                {
                    #: 'KFC',
                    @: { type: 'string' }
                },
                {
                    #: 'KGC',
                    @: { type: 'string' }
                }
            ]
        },
        name: 'Eric'
    }
]
}  

调用console.log(result.user[0].foods.food[1])时,输出为{ '#': 'Seafood Topped Salmon', '@': { type: 'string' } }

那么有没有办法像Seafood Topped Salmon一样获取和设置节点的文本内容并删除type属性?

更多信息:JSON实际上是从XML文档中解析的。在原始xml文件中,food节点看起来像<food type="string">McDonalds</food>。我必须保留type="string"属性,在完成编辑JSON对象后,我会将其解析回xml。

1 个答案:

答案 0 :(得分:0)

您可以直接访问该嵌入对象的文本以获取并将其设置为:

result.user[0].foods.food[1]['#']