在数组Angular中将字符串转换为整数

时间:2019-02-16 07:30:58

标签: javascript arrays json angular

我有一个从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);
})
}

5 个答案:

答案 0 :(得分:2)

您可以通过传递.map()函数作为回调来使用Number。从Docs起:

  

在非构造函数上下文中(即,没有new运算符),Number可用于执行类型转换。

const input = ["117498","4734","9782","53196"];

const output = input.map(Number);

console.log(output);

答案 1 :(得分:1)

mapES6中包含的一种方法,如果您使用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));