如何想让用户输入值,然后在javascript控制台中的一周结束后显示总数?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (133)

编写一个代码,询问用户每周发送的信件数量,并在javascript中显示一周内在控制台中发送的信件总数

var day = 1;
var totalletters = 0; //total letters sent


for (day; day <= 7; day++) {
  var getletters = 0;
  getletters = prompt("Please enter the number of total letters sent today", );
  totalletters += getletters;
}

console.log(totalletters); //displaying the total number of letters sent at the end of the week

// The console is showing the output as string instead of adding up the numbers
提问于
用户回答回答于

可以利用.length来获取提示字符串的长度。通过这种方式,您可以将其视为数字。

以下代码有效。

示例:https//jsbin.com/yewaga/edit?js,output

var totalletters = 0; //total letters sent
var getletters = 0;

for (var day = 0; day < 7; day++) {
  // noprotect
  getletters = prompt("Please enter the number of total letters sent today");

  totalletters += getletters.length;
  //console.log(totalletters)
}

console.log(totalletters); 
用户回答回答于

prompt()返回一个字符串; 添加字符串将它们连接起来。

在添加之前,您需要将提示响应转换为数字:

var day = 1;
var totalletters = 0; //total letters sent

for (day; day <= 7; day++) {
  // var getletters = 0;   // <-- this is redundant, since you replace the value in the next line
  var getletters = prompt("Please enter the number of total letters sent today", );
  totalletters += Number(getletters);
}
console.log(totalletters); 

(还有其他多个答案表明要获取字符串的长度;我认为他们将“字母总数”解释为你想要每个输入中的字母数(字符数)。你说的是“ 发送的信件“虽然如此,所以我假设你的意思是邮政邮件,并希望用户输入”9“表示9,而不是1。)

扫码关注云+社区

领取腾讯云代金券