请问为啥我算a=12,b=12,sum=a+b;结果sum是1212????

来源:5-1 什么是函数

慕数据1008917

2017-02-14 09:24

<!doctype html>

<html>

    <head>

        <meta charset="utf-8">

        <title>check</title>

        <script>

            function add2(a,b){

                var sum=a+b;

                var diff=a-b;

                document.write("两数之和为:"+sum);

                document.write("两数之差为:"+diff);

            }

            function calculate()

            {

                var a=prompt("请输入数字");

                var b=prompt("请输入第二个数字");

                add2(a,b);

            }

        </script>

    </head>

    <body>

        

        <button onclick="calculate()">点我算数</button>

    </body>

    

</html>


写回答 关注

8回答

  • qq_我怀念的_11
    2017-02-14 09:42:15
    已采纳

    paseInt转换成数字计算吧,试试

    慕数据100...

    paseInt是函数名?直接调用paseInt?

    2017-02-14 09:51:45

    共 1 条回复 >

  • 慕雪8890895
    2019-05-18 15:18:25

    这样好点:


    <!doctype html>

    <html>

        <head>

            <meta charset="utf-8">

            <title>check</title>

            <script>

                function add2(a,b){

                    var sum=a+b;

                    var diff=a-b;

    if(diff<0){

                    diff=-diff

                    }

                    document.write("两数之和为:"+sum);

                    

                    document.write("两数之差为:"+diff);


                }

                function calculate()

                {

                    var a=parseInt(prompt("请输入数字"));

                    var b=parseInt(prompt("请输入第二个数字"));

                    add2(a,b);

                 }

            </script>

        </head>

        <body>

             

            <button onclick="calculate()">点我算数</button>

        </body>

         

    </html>


  • 我的名字你的姓
    2018-08-18 12:16:29
    var a= +(prompt("请输入数字"));
    var b= +(prompt("请输入第二个数字"));

    原因:使用prompt得到用户输入的数据类型是字符串,谨记!谨记!谨记!

    可以使用上面的黑科技将其隐形转换为number类型。

    当然也可以使用parseInt或parseFloat进行强制转换

  • Web老林
    2018-08-03 08:48:01

    如果 + 号两边有一个为字符串的话 +的意思为字符串连接  如果是数字的话 + 就按算术方法使用

  • qq_往事随风_79
    2018-05-28 17:49:29

    啧啧额



  • 爱上慕婉清6262634
    2017-08-17 20:39:55

    用Number()也行

  • 慕数据1008917
    2017-02-14 11:06:02
    <!doctype html>
    <html>
        <head>
            <meta charset="utf-8">
            <title>check</title>
            <script>
                function add2(a,b){
                    var sum=a+b;
                    var diff=a-b;
                    document.write("两数之和为:"+sum);
                    document.write("两数之差为:"+diff);
                }
                function calculate()
                {
                    var a=parseInt(prompt("请输入数字"));
                    var b=parseInt(prompt("请输入第二个数字"));
                    add2(a,b);
                 }
            </script>
        </head>
        <body>
            
            <button onclick="calculate()">点我算数</button>
        </body>
        
    </html>

    谢谢!解决啦~~

  • 慕粉1056224411
    2017-02-14 09:51:33

    字符串没有转换为数字运算。

    可用parseInt()和parseFloat()两个转换函数解决。

JavaScript进阶篇

本课程从如何插入JS代码开始,带您进入网页动态交互世界

468193 学习 · 21891 问题

查看课程

相似问题