这一定是非常愚蠢的事情。过了几个小时后,我来这里寻求帮助。 我有一个users.json文件
{
"Test_Session": {
"test_SessionID": [
{
"$": {
"id": "1"
},
"test_type": [
"1"
],
"Test_IDtest": [
"1"
],
"DataURL": [
"data1"
]
}
]
}
}
我尝试通过
阅读DataURL var jsonData = require('./users.json');
var test = JSON.stringify(jsonData)
console.log(test.Test_Session.test_SessionID.DataURL);
在控制台中,我得到"无法读取未定义的属性test_SessionID"。
发生了什么?
答案 0 :(得分:1)
Node已经在解释JSON,请尝试以下方法:
var test = require('./users.json');
console.log(test.Test_Session.test_SessionID[0].DataURL);
答案 1 :(得分:1)
您的主要问题是test_SessionID是一个数组,因此当您尝试访问DataUrl时,它将是未定义的。您需要选择要读取的test_SessionID对象的索引。试试这个:
console.log(test.Test_Session.test_SessionID[0].DataURL);
另外,你不需要JSON.stringify任何东西,Node自动以JSON格式读取文件,所以只是做
var jsonData = require('./users.json');
console.log(jsonData.Test_Session.test_SessionID[0].DataURL);
应该可以正常工作。