2013-10-16 27 views
0

我应该提示用户输入一串由空格分隔的数字,并提醒这些数字的总和。我试图将值放入一个数组中,然后添加它们,但它不起作用。我尝试了很多不同的方式。请帮助!如何一起添加提示的值?

var input = prompt("Enter a string of numbers separated by spaces"); 
    var numbers = new Array (input.split(" ")); 
    var sum = 0; 

    for(var i = 0; i < numbers.length; i++){ 
     sum += numbers[i]; 
    }; 

    alert(sum); 

的jsfiddle:http://jsfiddle.net/mUqfX/2/

回答

4

你靠近,2个问题与您的代码。首先,.split返回一个数组,所以你不需要围绕它包装一个new。其次,你需要解析数字,否则你的连接字符串在一起。尝试

var input = prompt("Enter a string of numbers separated by spaces"); 
var numbers = input.split(" "); 
var sum = 0; 

for(var i = 0; i < numbers.length; i++){ 
    sum += parseInt(numbers[i]); 
}; 

alert(sum); 
1

你有2个问题:

input.split(" ") returnss一个数组,所以你不需要把它放在另一个数组

numbers数组包含字符串,您需要对强制数字来总计他们。

试试这个:

var input = prompt("Enter a string of numbers separated by spaces"); 
var numbers = input.split(" "); 
var sum = 0; 

for(var i = 0; i < numbers.length; i++){ 

sum += parseInt(numbers[i]); 
}; 

alert(sum);