Javascript 提示计算器不断返回。如何使用Nan修复错误?

Javascript 提示计算器不断返回。如何使用Nan修复错误?,javascript,Javascript,我正在尝试创建一个小费计算器,当我输入所有信息时,它不会返回所需的金额。相反,它返回Nan。它为什么会这样做,可以做些什么来解决这个问题 我已经尝试过处理JS代码和HTML,但我似乎不知道这是怎么回事 var billAmnt=document.getElementById('billAmnt').value; var serviceQual=document.getElementById('serviceQual').value; var peopleAmt=document.getElem

我正在尝试创建一个小费计算器,当我输入所有信息时,它不会返回所需的金额。相反,它返回Nan。它为什么会这样做,可以做些什么来解决这个问题

我已经尝试过处理JS代码和HTML,但我似乎不知道这是怎么回事

var billAmnt=document.getElementById('billAmnt').value;
var serviceQual=document.getElementById('serviceQual').value;
var peopleAmt=document.getElementById('peopleAmt').value;
var总计=亿美元*服务质量/人口数量;
函数calculateIP(){
如果(billAmnt==“”| | serviceQual==0){
警报(“请输入值”);
}

如果(peopleAmt===“”| | peopleAmt变量在用户输入之前已初始化,则在页面加载中。只需将变量(
billAmnt
serviceQual
peopleAmt
total
)放入CalculateIP函数中即可

函数calculateIP(){
var billAmnt=document.getElementById('billAmnt').value;
var serviceQual=document.getElementById('serviceQual').value;
var peopleAmt=document.getElementById('peopleAmt').value;
var总计=亿美元*服务质量/人口数量;
如果(billAmnt==“”| | serviceQual==0){
警报(“请输入值”);
}

如果(peopleAmt===“”| | peopleAmt在页面加载时设置了
var
s,则您引用的这些字段中的值将为空。因此,当尝试对空值应用算术运算时,您将返回
NaN
的结果

将这些
var
声明移动到
calculateTip()
方法中,以便在调用主要功能时提取这些值:

函数calculateIP(){
var billAmnt=document.getElementById('billAmnt').value;
var serviceQual=document.getElementById('serviceQual').value;
var peopleAmt=document.getElementById('peopleAmt').value;
var总计=亿美元*服务质量/人口数量;
如果(billAmnt==“”| | serviceQual==0){
警报(“请输入值”);
}

如果(peopleAmt==“”| | peopleAmt“NaN”表示不是数字。在代码中的某个地方,您可能切换了值的类型。@Faizanpakiman698Khan您的变量在脚本文件加载后立即被设置,因此输入当时没有任何内容,因此您试图对空字符串或空值进行数学运算,您需要在
calculateIP()中设置这些值
在验证检查之后。