【发布时间】:2022-01-11 07:01:38
【问题描述】:
我正在使用 Axios 对公共 API 执行 GET 请求。此 API 以字符串形式返回数值。我需要将此值转换为数值。我的应用程序使用 tsc 运行,所以我希望我的对象的结果是一个数值,但它不是。
Axios 响应
[
{
"name": "foo1",
"value": "8123.3000"
},
{
"name": "foo2",
"value": "5132.2003"
},
{
"name": "foo3",
"value": "622.0000"
}
]
预期输出
[
{
"name": "foo1",
"value": 8123.3
},
{
"name": "foo2",
"value": 5132.2003
},
{
"name": "foo3",
"value": 622
}
]
我的代码很简单,
interface MyObj {
myString: string;
myNumber: number;
}
(async () => {
let { data }: AxiosResponse<MyObj> = await axios.get<MyObj>("/public/data");
console.log(data);
})();
我尝试使用interface,class,接口Number。没有任何效果。
I leave an example of code to try it.
如何在不手动逐个转换每个值的情况下获得预期的输出?
【问题讨论】:
标签: node.js typescript axios json-deserialization tsc