访问 JSON 中的数组和对象
Access Array and Object inside JSON
我调用了 get API,其中 returns XML 并且我要转换为 JSON,但是 xml2js returns [Object] [Circular]和元素数组中的 [Array]。
如何查看元素数组中的内容?
var XMLHttpRequest = require("xmlhttprequest").XMLHttpRequest;
var convert = require('xml-js');
var request = new XMLHttpRequest();
request.open("GET", url, true, username, password);
request.withCredentials = true;
request.send();
request.onreadystatechange=(e)=>{
var obj = convert.xml2js(request.responseText);
console.log(obj);
这是输出:
{ declaration:
{ attributes: { version: '1.0', encoding: 'UTF-8', standalone: 'yes' } },
elements:
[ { type: 'element',
name: 'model-response-list',
attributes: [Object],
elements: [Array] } ] }
节点控制台输出默认隐藏深层嵌套objects/arrays。
可以通过以下方式避免此行为:
- console.dir 具有指定的
depth
选项
- 将对象转换为 JSON 字符串
> var obj = { a: { b: { c: { d: {} } } } };
> console.log(obj);
{ a: { b: { c: [Object] } } }
> console.dir(obj, { depth: null }); // null for unlimited recursion
{ a: { b: { c: { d: {} } } } }
> console.log(JSON.stringify, null, 4); // JSON.stringify can also format input with white spaces (in this case - 4)
{
"a": {
"b": {
"c": {
"d": {}
}
}
}
}
我调用了 get API,其中 returns XML 并且我要转换为 JSON,但是 xml2js returns [Object] [Circular]和元素数组中的 [Array]。 如何查看元素数组中的内容?
var XMLHttpRequest = require("xmlhttprequest").XMLHttpRequest;
var convert = require('xml-js');
var request = new XMLHttpRequest();
request.open("GET", url, true, username, password);
request.withCredentials = true;
request.send();
request.onreadystatechange=(e)=>{
var obj = convert.xml2js(request.responseText);
console.log(obj);
这是输出:
{ declaration:
{ attributes: { version: '1.0', encoding: 'UTF-8', standalone: 'yes' } },
elements:
[ { type: 'element',
name: 'model-response-list',
attributes: [Object],
elements: [Array] } ] }
节点控制台输出默认隐藏深层嵌套objects/arrays。
可以通过以下方式避免此行为:
- console.dir 具有指定的
depth
选项 - 将对象转换为 JSON 字符串
> var obj = { a: { b: { c: { d: {} } } } };
> console.log(obj);
{ a: { b: { c: [Object] } } }
> console.dir(obj, { depth: null }); // null for unlimited recursion
{ a: { b: { c: { d: {} } } } }
> console.log(JSON.stringify, null, 4); // JSON.stringify can also format input with white spaces (in this case - 4)
{
"a": {
"b": {
"c": {
"d": {}
}
}
}
}