javascript中的加法问题

来源:百度知道 编辑:UC知道 时间:2024/06/14 20:55:47
我想做一个Javascript的计算器,当我输入1+2的是后 结果却显示的是12 而不是3,为什么 这是我写的代码.其他的算法都是对的 只有加法不对.
<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<html>

<head>
<title>Amazing</title>
<style type=/"text/oss">
</style>
</head>
<script type="text/javascript">
var a=0;
var b=0;
var c=0;
a = prompt('Enter first number');
c = prompt('Enter arithmetic operation');
b = prompt('Enter second number');

var m=a*b;

prompt返回的是字符串的1和2,字符串的1+2当然是12了,例如"a"+"b"就是"ab"一个道理,
你需要先转化成数字

a = parseInt(prompt('Enter first number'));
c = parseInt(prompt('Enter arithmetic operation'));
b = parseInt(prompt('Enter second number'));

或者
a = prompt('Enter first number') * 1;
c = prompt('Enter arithmetic operation') * 1;
b = prompt('Enter second number') * 1;

document.write(a+b)
是字符串相加
parseFloat(a)
parseFloat(b)
把他转发就可以了

document.write(a+b)
是两个字符相加了 输出的结果就是12了
document.write(asd)
这样就对了