javascript - 通过提示为当前值添加值
问题描述
我正在用Javascript模拟咖啡机,并且必须制作向机器加水的方法。有一些条件必须检查,我这样做了,但我遇到的问题是将通过提示导入的新值添加到当前值。
这是我所拥有的:
addWater: function() {
this.water = 0;
let addWater = prompt('Unesite kolicinu vode koju zelite da dodate');
if (addWater === null || addWater.trim().length === 0) {
alert('Morate uneti koliko vode zelite');
return;
} else if (isNaN(addWater) || addWater.startsWith('-')) {
alert('Unos mora biti pozitivna brojcana vrednost');
return;
} else if (addWater > 400) {
alert('Maksimalan unos vode je 400');
return;
} else {
addWater = Number(addWater);
this.water += addWater;
}
this.waterStatus();
},
有了这个它只输入值当前值,它不添加数字,因为条件之一是水不超过400。
我做错了什么?
解决方案
在函数体的顶部,有一条语句this.water = 0; . 因此,每次调用该函数时,该值将始终填充一个新值,而不是添加。你的代码应该是这样的
addWater: function () {
let addWater = prompt('Unesite kolicinu vode koju zelite da dodate');
if (addWater === null || addWater.trim().length === 0) {
alert('Morate uneti koliko vode zelite');
return;
} else if (isNaN(addWater) || addWater.startsWith('-')) {
alert('Unos mora biti pozitivna brojcana vrednost');
return;
} else if (addWater > 400) {
alert('Maksimalan unos vode je 400');
return;
} else {
addWater = Number(addWater);
this.water += addWater;
}
this.waterStatus();
}
推荐阅读
- reactjs - 在时间间隔内反应反应图表更新
- node.js - 如何对 typeorm 关系进行递归
- django - Dockerfile、docker-compose.yml 和 Postgresql 配置“密码验证失败”
- javascript - 让鼠标事件在 d3.js 中始终如一地工作
- c# - Blazor 在页面之间丢失身份验证
- c++ - 将 ac 库路径从柯南包传递到源文件
- python - 尝试从 python 调用 restful api - 'resp' 未定义
- python-3.5 - Python3.5 中的类型提示:带别名的类型列表
- html - 使用 flex 填充容器内剩余水平空间的正确方法是什么
- websphere - 实例化 s3 服务对象后,在公共和私人签名 url 之间交换的最佳方式是什么