javascript - 为什么会这样?js计算
问题描述
所以,我试图构建简单的计算,但我无法让它尽可能简单地工作,我不知道。当添加值时,唯一的薪水 - 租金工作得到连接示例:9000 -100 = 8900 很好,但在添加其他内容后,我得到 8900 - 100 = 8900100
document.querySelector('.btn').addEventListener('click',calculateTaxes);
// calculateTaxes
function calculateTaxes(e){
//UI vars
const sal = document.querySelector('#salary');
const sel = document.querySelector('#selection');
const rent = document.querySelector('#rent');
const travel = document.querySelector('#travel');
const groce = document.querySelector('#groce');
const elSe = document.querySelector('#else');
const btn = document.querySelector('#btn');
let final;
final = sal.value - (rent.value+travel.value+groce.value+elSe.value)
}
解决方案
您可能有输入文本框,text
如果是这样,您需要在计算之前将输入值解析为整数。像这样的东西:
// calculateTaxes
function calculateTaxes(e){
//UI vars
const sal = document.querySelector('#salary');
const sel = document.querySelector('#selection');
const rent = document.querySelector('#rent');
const travel = document.querySelector('#travel');
const groce = document.querySelector('#groce');
const elSe = document.querySelector('#else');
const btn = document.querySelector('#btn');
let final;
final = parseInt(sal.value) - (parseInt(rent.value) + parseInt(travel.value) + parseInt(groce.value) + parseInt(elSe.value));
}
推荐阅读
- python - 使用 Pandas Dataframe 识别和记录重叠的时间间隔
- c++ - C++ 中 realloc() 的替代方案?
- multithreading - 在 Java 8 中为一个写入者和多个读取者线程实现 ConcurrentHashMap
- msbuild - MSBuild 任务通过在路径中使用通配符来复制特定文件夹的内容
- c# - 在多个窗口之间切换
- javascript - 为什么我的引导控件不起作用?
- c++ - 为什么将变量添加到特定类时 arm-gnu-eabi 链接失败?
- ios - 无法安装IOS企业应用
- c# - 将 3 个 RadioButtons 组绑定到自定义类?
- java - SimpleJdbcCall 是“多线程的”是什么意思?