Javascript 将字符串转换为数组内的整数
我有一个从console.log(res)显示的数组,如下所示:Javascript 将字符串转换为数组内的整数,javascript,arrays,json,angular,Javascript,Arrays,Json,Angular,我有一个从console.log(res)显示的数组,如下所示: res = ["117498","4734","9782","53196"] 如果要将数组的格式转换为 像这样: res = ["117498","4734","9782","53196"] 我用地图弄糊涂了。在angular上,如果有使用map的方法,我必须在component.ts中导入哪个map库 我的代码: public apiData; ngOnInit() { this.countryunitservice.ge
res = ["117498","4734","9782","53196"]
如果要将数组的格式转换为
像这样:
res = ["117498","4734","9782","53196"]
我用地图弄糊涂了。在angular上,如果有使用map的方法,我必须在component.ts中导入哪个map库
我的代码:
public apiData;
ngOnInit() {
this.countryunitservice.getTicketCountryUnit().subscribe((res)=>{
this.apiData = res;
console.log(res);
})
}
通过将Number
函数作为回调传递,可以使用.map()
。自:
在非构造函数上下文中(即没有new
运算符),Number
可用于执行类型转换
常量输入=[“117498”、“4734”、“9782”、“53196”];
常量输出=输入.map(数字);
控制台日志(输出)
map
是ES6
中包含的一种方法,如果您使用babel将代码传输到ES5
中,而不是直接使用,则可以使用polyfill或类似下划线或loadash的库
您可以使用和隐式转换
常量输入=[“117498”、“4734”、“9782”、“53196”];
const output=input.map(e=>+e);
控制台日志(输出)代码>您不需要为地图导入任何库。它由javascript本身提供 根据您的评论,响应似乎是一个对象而不是数组。因此,使用
Object.values(res).map(Number)
如果您的响应是数组,则可以执行以下操作
const-output=[“117498”、“4734”、“9782”、“53196”].map(x=>Number(x));
控制台日志(输出)代码>只需执行
let result=[“117498”、“4734”、“9782”、“53196”].map(val=>+val);
控制台日志(结果)代码>您可以使用map和parseInt函数
let result = ["117498","4734","9782","53196"].map(val => parseInt(val));
给出错误“Property'map'在类型'Object'上不存在”。“man@Mohammad Usmani在库中使用了“import{map}from'lodash';”但仍然给出错误“Property'map'在类型'Object'上不存在”。“man@Code ManiacIt仍然给出错误“Property'map'在类型'Object'上不存在”。@dileepkumar jami。我不知道该怎么办,那么你是想在数组或对象上使用map()?。似乎您正在对象上使用它,因此出现了错误。请显示您如何使用代码hi@dileepkumar jami,我已经附上了我的代码,这是在我添加代码作为您的建议之前。res是数组,每个部分都包含字符串,看起来很奇怪。返回的类型是什么?你能检查一下并告诉我吗?。如果你把你的代码贴在上面会更好stackblitz@aldi,我在您的代码中找不到CountryunitService文件。请放好所有文件或向我展示服务的实现