繁体   English   中英

为什么我的 JavaScript 代码算术方程出现 NaN 错误

[英]Why Am I Getting An NaN Error For My JavaScript Code Arithmetic Equation

在此处输入图片说明

我正在尝试为一项任务创建一个婚礼宴会桌计划器应用程序,但是我的“table”变量出现了 NaN 错误,而我的 return 语句中的“guests”变量却没有。 图片是我在我的网站上看到的,下面是脚本代码。 我正在使用带有 JavaScript 的 HTML 语言。 谢谢你的帮助!

function distribGuests() {

  // Read the table value inputed by the user
     var text = document.getElementById('tablesInputBox').value;

  // Convert what the user typed from text into a number.
     var t = (text);

  // Read the guests value inputed by the user
     var text = document.getElementById('guestsInputBox').value;

  // Convert what the user typed from text into a number.
     var g = (text);

  // Formula for variable "a", the rounded down value of guests
     var a = Math.floor (g / t);

  // Formula for variable "b", the rounded up value of guests
     var b = Math.round (g / t); 

  // Formula for variable "x", the end result for the first set of table distributions
     var x = (g - b * t) / (a - b);

  // Formula for variable "y", the end result for the second set of table distrubutions
     var y = (t - x); 

  // Use string concatenation to produce statement for end result of wedding table distribution
     var message = "There will be "+ x +" tables with "+ b +" guests and "+ y +" tables with "+ a +" guests";

  // Display the message in the div that has the outputDiv
     document.getElementById('outputMessage').innerHTML = message;
}

括号不会将字符串转换为数字。

  // Convert what the user typed from text into a number.
     var t = (text);

应该:

  // Convert what the user typed from text into a number.
     var t = +text;

您也可以使用parseInt(text) ,但+text对于您的用例实际上是相同的(称为类型强制)。

(两种方法的区别分析见这个问题

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM