Javascript计算字符串中的数字

时间:2016-09-22 18:45:43

标签: javascript string count

我需要计算一个字符串中的数字。数字用空格分隔。 (1 2 3 4 10)我试图通过charAt这样做,如果数字不是一个数字就不起作用。我是JS的新手,需要一些例子。我从这开始,但遇到了两位数#:

int

任何帮助将不胜感激

4 个答案:

答案 0 :(得分:1)

我不知道为什么你需要这样做,但如果这个字符串来自另一种字体,你可以处理它,如下所示:

var string1 = "(1 1 1 4 10)";
var aux = string1.replace("(","").replace(")","");
aux = aux.split(" ");
var total = parseFloat(0);
 for(var j=0; j<aux.length; j++) {
    total += parseFloat(aux[j]); 
}
console.log(total);

https://jsfiddle.net/bggLkvxd/1/

答案 1 :(得分:1)

这是一种更简单的方法。首先,修复string1,使其实际上是一个字符串(通过添加&#34;&#34; s),也可以使用&#34; var string&#34;正确声明它。然后你可以做这样的事情。

var string1 = ("1 1 1 4 10")

function addString(input) {
var sum = 0;                        //get your empty variable ready
var array1 = input.split(" ");    //split your string into an array
 for(var i=0; i<array1.length; i++) { 
array1[i] = parseInt(array1[i]);    // each new array element is integer
sum += array1[i];                   // += is operator for solve/refactor
}
return sum;
}

addString(string1);

答案 2 :(得分:0)

创建一个数组:

var arr=[1,2,3]

然后执行:

var count=0;
arr.forEach(function(number){
count+=number;
}

或使用字符串:

var str="1 2 3";
var arr=str.split(" ");

var count=0;
arr.forEach(function(number){
count+=parseInt(number);
}

现在计数包含所有字符的总和

答案 3 :(得分:0)

//使用方法split将字符串转换为数组,然后添加数组项:

var string1 = "1 1 1 4 10", total = 0;
string1.split(" ").forEach(function(item) {
    total += +item;
});