我有一个从console.log(res)显示的数组,如下所示:
res = ["117498","4734","9782","53196"]
如果我想转换数组的格式怎么办 像这样:
res = [117498,4734,9782,53196]
我对使用地图感到困惑。在角度上,如果有地图的方式,我必须在我的component.ts中导入什么地图库。
我的代码:
public apiData;
ngOnInit() {
this.countryunitservice.getTicketCountryUnit().subscribe((res)=>{
this.apiData = res;
console.log(res);
})
}
答案 0 :(得分:2)
您可以通过传递.map()
函数作为回调来使用Number
。从Docs起:
在非构造函数上下文中(即,没有
new
运算符),Number
可用于执行类型转换。
const input = ["117498","4734","9782","53196"];
const output = input.map(Number);
console.log(output);
答案 1 :(得分:1)
map
是ES6
中包含的一种方法,如果您使用babel将代码转换成ES5
,而不是直接使用,则可以使用polyfill或下划线或loadash之类的库
您可以使用map和隐式转换。
const input = ["117498","4734","9782","53196"];
const output = input.map(e=> +e);
console.log(output);
答案 2 :(得分:1)
简单地做
let result = ["117498","4734","9782","53196"].map(val => +val);
console.log(result);
答案 3 :(得分:0)
您不需要导入任何地图库。它是由javascript本身提供的。
根据您的评论,响应似乎是一个对象而不是数组。因此,请使用Object.values(res).map(Number)
如果您的响应是数组,则可以执行以下操作。
const output = ["117498","4734","9782","53196"].map(x => Number(x));
console.log( output );
答案 4 :(得分:0)
您可以使用map和parseInt函数
let result = ["117498","4734","9782","53196"].map(val => parseInt(val));