一个如下的API请求:const response = await this.publicGetMarkets (params);给了我一个响应,其中包含以下格式的markets列表:
{
"markets": {
"LINK-USD": {
"market": "LINK-USD",
"status": "ONLINE"
},
...
}就像这里的例子一样,我的问题是每个市场的LINK-USD都在变化。我如何修复我的代码,使我可以在我的代码中的变量,如market,status。我已经编写了以下代码片段:
const market = this.safeValue (response, 'markets');
const result = [];
for (let i = 0; i < markets.length; i++) {
const markets = this.safeString (markets, {}, {});
const market = this.safeString (markets, 'market');
const status = this.safeString (markets, 'status');
result.push({
'market': market,
'status': status,
});
}
return result;发布于 2021-06-01 04:59:51
您可以使用Object.values(data.markets)获取所有内部对象的数组。
如果需要过滤掉不需要的属性,这也是一个相当简单的映射
const data = {
"markets": {
"LINK-USD": {
"market": "LINK-USD",
"status": "ONLINE"
},
"LINK-EURO": {
"market": "LINK-EURO",
"status": "TBD"
}
}
}
const res = Object.values(data.markets)
console.log(res)
发布于 2021-06-01 04:56:27
const responses = this.safeValue (response, 'markets');
const result = [];
for (let response of responses) {
const market = responses.markets["LINK-USD"].market,
status = responses.markets["LINK-USD"].status;
result.push({market, status});
}
return result;我希望这就是你要的。
https://stackoverflow.com/questions/67779917
复制相似问题