我正在使用承诺从端点访问 JSON 数据。我能够在 console.log 上显示数据,但是当我尝试访问特定字段时,它给我 undefined 这是我的代码
var json= '';
const requests = [
{
url: 'url1',
},
{
url: 'url2',
},
];
Promise.map(requests, function(obj) {
return request(obj).then(function(body) {
return JSON.parse(body);
});
}).then(function(result) {
result = JSON.stringify(result);
result = JSON.parse(result);
console.log(typeof result); -------> Object
console.log(result); -------> Outputs the data perfectly
console.log(result[0]); -------> Outputs the data perfectly
console.log(result.country); ------> Gives undefined
console.log(result[0].country); ------> Gives undefined
根据您的评论,您的数据以数组的形式出现。这可能是由于您在发出两个请求时映射您的承诺的方式,但我能够提取 json 对象,const data = result[0][0];
然后获取国家/地区,如下所示。
const result = [
[
{
country: 'ac',
language: 'en',
audience: null,
productTypes: [],
articles: [Array],
collections: [Array],
capabilities: [],
products: [Array],
series: [],
contact: [],
generalPages: [Array],
commonProductLiteratures: []
}
]
];
console.log(typeof result); // object
const data = result[0][0];
console.log(data);
console.log(data.country); // ac
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句