数组中去除% 转为number
时间: 2023-08-04 09:11:52 浏览: 46
可以使用JavaScript中的`map()`函数和`parseInt()`函数来实现。
假设有一个数组`arr`,它的元素都是字符串类型,代表一些数字,但是每个数字中都带有一个百分号(%):
```
const arr = ['25%', '50%', '75%'];
```
我们想要把这些字符串类型的数字去除百分号,并且转为数字类型。可以使用下面的代码实现:
```
const newArr = arr.map(numStr => parseInt(numStr.replace('%', '')));
console.log(newArr); // [25, 50, 75]
```
这里使用了`map()`函数遍历原数组,对每个元素执行一个函数,然后把返回值组成一个新的数组。函数的参数`numStr`代表原数组中的每个元素。在函数体内,使用`replace()`函数将百分号(%)替换为空字符串,然后使用`parseInt()`函数将字符串转为数字类型。最后把转换后的数字作为函数的返回值。最终得到一个新的数组`newArr`,它的元素都是数字类型,没有百分号。
相关问题
qt将一个int数组中的元素转为十六进制
您可以使用Qt中提供的QString::number()函数将整数转换为十六进制字符串,然后将其存储到QString中。以下是一个示例代码,将一个int数组中的元素转换为十六进制字符串并存储到QStringList中:
```c++
int arr[] = {10, 20, 30, 40};
QStringList hexList;
for (int i = 0; i < 4; i++) {
QString hexStr = QString::number(arr[i], 16);
hexList.append(hexStr);
}
```
在上述代码中,QString::number()函数的第二个参数指定将整数转换为十六进制字符串。在这个例子中,arr数组中的每个元素都被转换为十六进制字符串,并存储到hexList中。
js吧数组中的字符串转为数字
可以使用数组的 map() 方法以及 Number() 函数将字符串转为数字,具体实现如下:
```
var arr = ['1', '2', '3'];
var newArr = arr.map(function(str) {
return Number(str);
});
console.log(newArr); // [1, 2, 3]
```
注意,在使用 Number() 函数进行类型转换时,如果字符串无法转为数字,则会返回 NaN。