js怎么把字符串转换成数字?

JavaScript013

js怎么把字符串转换成数字?,第1张

num1 = parseFloat($("#id").val())\x0d\x0aJS 中转换函数有两个 parseInt()和parseFloat() 前者将字符串转换为int类型 后者转换为float类型\x0d\x0a追加一点小技巧\x0d\x0a在js里 其实也可以这么做将字符串转为数字\x0d\x0anum1 = $("#id").val() - 0\x0d\x0a取到的字符串减0也可以转为数字类型 加0是不行的 因为+操作符存在类似过载的情况,不知道js里是不是叫操作符过载

javascript主要有以下三种数据类型转换方式:

转换函数:parseInt()和parseFloat()分别将值转换成整数和浮点数。

强制类型转换:Boolean(value)、Number(value)、String(value)将给定的值分别转换成逻辑值、数字(整数或浮点数)及字符串。

弱类型自动转换:字符串与数字进行数学操作符运算时,字符串会自动转为数字。

实例演示:将文本框的值转化成数值型

var a = document.getElementById("num1").value

var b = document.getElementById("num2").value

var c1 = parseFloat(a) + parseFloat(b)   //  函数转换

var c2 = Number(a) + Number(b)  //  强制类型转换

var c3 = a*1 + b*1   // a*1将自动转化为数字类型

<!DOCTYPE html>

<html>

<head>

    <meta charset="utf-8"/>

    <meta http-equiv="X-UA-Compatible" content="IE=edge">

    <title>Title</title>

    <meta name="viewport" content="width=device-width, initial-scale=1">

</head>

<body>

    <input id="test" type="text" />

    <script type="text/javascript">

        var input = document.querySelector('#test')

        input.addEventListener('change',function (e) {

            var val = e.target.value

            if(!isNaN(val)) {

                e.target.value = '0x' + Number(val).toString(16)

            }

        },false)

    </script>

</body>

</html>