Javascript变量没有添加结果,变量都充当字符串为什么?
为什么会出错 预期结果=1360000 结果=10000036000 功能hitungJumlah{ var jumlah=document.getElementByIdpinjam.value; var lama=document.getElementByIdkembalinya.value; var bunga=lama*12/100; var biaya=document.getElementByIdbiaya.value=jumlah*bunga; document.getElementByIdtotal.value=jumlah+biaya; }Javascript变量没有添加结果,变量都充当字符串为什么?,javascript,php,html,Javascript,Php,Html,为什么会出错 预期结果=1360000 结果=10000036000 功能hitungJumlah{ var jumlah=document.getElementByIdpinjam.value; var lama=document.getElementByIdkembalinya.value; var bunga=lama*12/100; var biaya=document.getElementByIdbiaya.value=jumlah*bunga; document.getElemen
因为它以字符串形式读取数据,所以使用parseInt函数将数据设置为整数 试试这个
parseInt(jumlah) + parseInt(biaya)
因为1000000和360000充当字符串也用于javascript中的concatation,因为它将数据作为字符串读取,使用parseInt函数将数据作为整数 试试这个
parseInt(jumlah) + parseInt(biaya)
因为1000000和360000充当字符串也用于javascript中的concatation,因为*运算符不会像+运算符那样键入强制。此外,您可能不必一直使用document.getElementById。你可以简单地做
<script>
function hitungJumlah() {
var jumlah = Number(pinjam.value),
lama = Number(kembalinya.value),
bunga = lama * 12/100;
biaya.value = jumlah * bunga;
total.value = jumlah + biaya;
}
</script>
虽然parseInt和Number有差异。而parseInt42*10将产生42,因为数字对象构造函数Number42*10将产生NaN
所以要小心使用它们。因为*操作符不会像+操作符那样键入强制。此外,您可能不必一直使用document.getElementById。你可以简单地做
<script>
function hitungJumlah() {
var jumlah = Number(pinjam.value),
lama = Number(kembalinya.value),
bunga = lama * 12/100;
biaya.value = jumlah * bunga;
total.value = jumlah + biaya;
}
</script>
虽然parseInt和Number有差异。而parseInt42*10将产生42,因为数字对象构造函数Number42*10将产生NaN
所以要小心玩它们