将javascript中的字符串拆分为一个数组

Split string in javascript into an array

本文关键字:一个 数组 javascript 字符串 拆分      更新时间:2023-09-26

我正在使用eval()函数创建一个计算器,正如您所知,eval返回一个字符串(我指的是本教程),例如20+30。我现在想要的是拆分这个字符串,这样我就有了一个像[20,30,50]这样的数据数组,其中2030是操作数,50是这种情况下的结果。

到目前为止,我所做的是:

var input = document.getElementById('screen');
var result= '20+30'; // as an example
var firstOperand = result.split('+', 1); //this is taking the first operand

正如我提到的,我真正想要的是将字符串"20+30"的输入值转换为数组:myArr = [20,30,50]

有什么帮助吗?

使用地图的力量并减少!

result = '1+2+3+4+5+6+7+8+9';
a = result.split('+').map(function(x){ return parseInt(x) });
b = a;
b.push(a.reduce(function(p, c) { return p+c; }));
// b = [1, 2, 3, 4, 5, 6, 7, 8, 9, 45]

顺便说一句,你不应该使用eval(),而是研究分流场算法。该算法的代码示例可以在SO和Rosettacode中找到。

您可以创建只传递给split函数的数组——分隔符。

var myArr = result.split('+');

现在你需要添加结果:

myArr.push("50");