前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >JavaScript 类型转换

JavaScript 类型转换

作者头像
Devops海洋的渔夫
发布2019-05-31 10:45:55
9290
发布2019-05-31 10:45:55
举报
文章被收录于专栏:Devops专栏Devops专栏

1、直接转换 parseInt() 与 parseFloat()

代码语言:javascript
复制
alert('12'+7); //弹出127
alert( parseInt('12') + 7 );  //弹出19 
alert( parseInt(5.6));  // 弹出5
alert('5.6'+2.3);  // 弹出5.62.3
alert(parseFloat('5.6')+2.3);  // 弹出7.8999999999999995
alert(0.1+0.2); //弹出 0.3000000000000004
alert((0.1*100+0.2*100)/100); //弹出0.3
alert((parseFloat('5.6')*100+2.3*100)/100); //弹出7.9

2、隐式转换 “==” 和 “-”

代码语言:javascript
复制
if('3'==3)
{
    alert('相等');
}
// 弹出'相等'

alert('10'-3);  // 弹出7

3、NaN 和 isNaN

代码语言:javascript
复制
alert( parseInt('123abc') );  // 弹出123
alert( parseInt('abc123') );  // 弹出NaN

练习

制作一个计算器,可以计算加、减、乘、除,用户输入非数字或者置空可以提示

实现了基本算法之后,再加上输入非数字的判断,如下:

完整代码如下:

代码语言:javascript
复制
<!DOCTYPE html>
<html>
<head>
    <title></title>
    <script type="text/javascript">
        window.onload = function(){
            // 获取文本框的两个数值
            var oNum1 = document.getElementById('input1');
            var oNum2 = document.getElementById('input2');

            var iBtn1 = document.getElementById('input3');
            var iBtn2 = document.getElementById('input4');
            var iBtn3 = document.getElementById('input5');
            var iBtn4 = document.getElementById('input6');

            var iSpan = document.getElementsByTagName('span')[0];

            // 加法
            iBtn1.onclick = function(){
                checkNum(oNum1.value,oNum2.value); //检查输入是否为数字
                var result = parseFloat(oNum1.value) + parseFloat(oNum2.value);
                result = Math.floor(result);
                iSpan.innerHTML = result;
            }

            // 减法
            iBtn2.onclick = function(){
                checkNum(oNum1.value,oNum2.value); //检查输入是否为数字
                var result = parseFloat(oNum1.value) - parseFloat(oNum2.value);
                result = Math.floor(result);
                iSpan.innerHTML = result;
            }

            // 乘法
            iBtn3.onclick = function(){
                checkNum(oNum1.value,oNum2.value); //检查输入是否为数字
                var result = parseFloat(oNum1.value) * parseFloat(oNum2.value);
                result = Math.floor(result);
                iSpan.innerHTML = result;
            }

            // 除法
            iBtn4.onclick = function(){
                checkNum(oNum1.value,oNum2.value); //检查输入是否为数字
                var result = parseFloat(oNum1.value) / parseFloat(oNum2.value);
                result = Math.floor(result);
                iSpan.innerHTML = result;
            }

            function checkNum(num1,num2){

                    var reg=/^[0-9]+.?[0-9]*$/; //判断字符串是否为数字 ,判断正整数用/^[1-9]+[0-9]*]*$/

                    if(!reg.test(num1)){
                        alert("请输入数字");
                        return false;
                    }

                    if(!reg.test(num2)){
                        alert("请输入数字");
                        return false;
                    }

            }

        }
    </script>
</head>
<body>
    <input type="text" name="num1" id="input1">
    <input type="text" name="num2" id="input2">
    <input type="button" name="fn" id="input3" value="加">
    <input type="button" name="fn" id="input4" value="减">
    <input type="button" name="fn" id="input5" value="乘">
    <input type="button" name="fn" id="input6" value="除">
    <div>结果:<span></span></div>
</body>
</html>
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019.03.27 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 练习
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档