2017-10-15 27 views
-3

如何将包含(0,实数,浮点数,负数)的字符串转换为算术值数组。解析Javascript中的算术值字符串

鉴于输入var str = "0 12 -3 10"

我希望为输出var arr = [0, 12, -3, 10];

我曾尝试:

  • eval(str),但它会跳过0和底片
  • parseInt(str),但它仅接受第一个索引并忽略其余。

在此先感谢。

回答

2

您可以拆分字符串并将值作为数字映射。

使用:

var string = "0 12 -3 10", 
 
    array = string 
 
     .split(' ') 
 
     .map(Number); 
 
     
 
console.log(array);

0

String.match()功能扩展的解决方案:

var str = " 0 12 -3 10 -0.003 0.9 b", 
 
    arr = str.match(/-?\d+(\.\d+)?/g).map(Number); 
 
\t 
 
console.log(arr);

0

只要分割上空间中的字符串创建阵列和米AP数组元素为数字

var arr = "0 12 -3 10".split(' ').map(Number); 
 
    
 
console.log(arr)