prompt返回的是字符串的1和2,字符串的1+2当然是12了,例如"a"+"b"就是"ab"一个道理,
创新互联长期为上千余家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为双湖企业提供专业的成都网站建设、成都做网站,双湖网站改版等技术服务。拥有十载丰富建站经验和众多成功案例,为您定制开发。
你需要先转化成数字
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;
var i = 1;
var j = 2;
alert(i+0+j); 结果 alert:3.
现在解答为什么要加一个0.因为在js里面,如果你直接写+号的话,JS会以为你是把两个字符串相加,就像上面的,结果会alert(12),而加上一个0的话,会让它知道这个是在做一个加法运算而不是拼接字符串。当然
这是JavaScript浮点运算的一个bug。解决的方法是自己写一个加法运算函数。
script
//加法函数,用来得到精确的加法结果
//说明:javascript的加法结果会有误差,在两个浮点数相加的时候会比较明显。这个函数返回较为精确的加法结果。
//调用:accAdd(arg1,arg2)
//返回值:arg1加上arg2的精确结果
function accAdd(arg1,arg2){
var r1,r2,m;
try{r1=arg1.toString().split(".")[1].length}catch(e){r1=0}
try{r2=arg2.toString().split(".")[1].length}catch(e){r2=0}
m=Math.pow(10,Math.max(r1,r2))
return (arg1*m+arg2*m)/m
}
//给Number类型增加一个add方法,调用起来更加方便。
Number.prototype.add = function (arg){
return accAdd(arg,this);
}
var i=0.069;
i=i.add(0.121).add(0.597).add(0.213);
document.getElementById("output").innerHTML=i;
/script
input id="num1" type="text" /
input id="num2" type="text" /
input type="button" onclick="sumnumber()" value="求和"/
function sumnumber(){
var i = document.getElementById(num1) .value;
var j = document.getElementById(num2) .value;
if(ij){
for(int k=j;k=i;k++){
var sum = 0;
sum = sum+k;
}
}else{
for(int k=i;k=j;k++){
var sum = 0;
sum = sum+k;
}
}
}
方法一:使用"+"将两个字符串"相加"
示例:
var longString = "One piece " + "plus one more piece.";
//结果:longString值为:"One piece plus one more piece.";
方法二: 要将多个字符串累积为一个字符串,还可以使用"+="操作符:
示例:
var result = "";
result += "My name is Anders"
result += " and my age is 25";
//结果:result值为"My name is Anders and my age is 25"
方法三:方法concat(),它完成与"+"相同的功能:
string.concat(value1, value2, ...)
示例:
var str4="字符串连接";
str4=str4.concat("use concat function connec string");
//结果:"字符串链接use concat function connec string"
“+” 既可作为加法运算也能用于连接字符,后者的优先级别较高。
script type="text/javascript"
x=5+5;
document.write(x);
document.write("br /");
x="5"+"5";
document.write(x);
document.write("br /");
x=5+"5";
document.write(x);
document.write("br /");
x="5"+5;
document.write(x);
document.write("br /");
/script
运行结果:
10
55
55
55
规则是:
如果把数字与字符串相加,结果将成为字符串。