为了账号安全,请及时绑定邮箱和手机立即绑定

通过prompt获得的数值为什么不是数值?

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>函数传参</title>
<script type="text/JavaScript">

   function  sum1()              
    {   
        var x =prompt("请输入第1个数:");
        var y =prompt("请输入第2个数:");
        var z =prompt("请输入第3个数:");
        sum = x + y +z;
        document.write(x+"、"+y+"、"+z+"和:"+sum+"<br/>");
    }
   sum1()  
</script>
</head>
<body>
</body>
</html>为什么这里SUM不是x、y、z求和,而是合并相加

正在回答

4 回答

alert():无返回值;

confirm():返回true 或 false

prompt返回数据类型是字符串。

因此结果显示为三个数合并相加,你就不能用prompt实现求和的语法,他只是作为提示框而使用...

2 回复 有任何疑惑可以回复我~
#1

汤姆家的鱼 提问者

非常感谢!
2016-09-25 回复 有任何疑惑可以回复我~

<!DOCTYPE HTML>

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>函数传参</title>

<script type="text/JavaScript">


   function  sum1()              

    {   

        var x =prompt("请输入第1个数:");

        var y =prompt("请输入第2个数:");

        var z =prompt("请输入第3个数:");

sum1 = parseInt(x)+parseInt(y)+parseInt(z); //弄个类型转换将字符串类型转换为int型(或者其他类型)就行了

        sum = x + y +z;

        document.write(x+"、"+y+"、"+z+"和:"+sum+"<br/>");

document.write(x+"、"+y+"、"+z+"和:"+sum1+"<br/>");

 

    }

   sum1()  

</script>

</head>

<body>

</body>

</html>


1 回复 有任何疑惑可以回复我~
 function  sum1()              
    {   
        var x =prompt("请输入第1个数:");
        var y =prompt("请输入第2个数:");
        var z =prompt("请输入第3个数:");
        sum = parseInt(x) + parseInt(y) +parseInt(z);
        document.write(x+"、"+y+"、"+z+"和:"+sum+"<br/>");
    }

这样就合适了  prompt获取是字符串

1 回复 有任何疑惑可以回复我~

prompt返回数据类型是字符串

1 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

通过prompt获得的数值为什么不是数值?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信