js代码字符串转数字(js字符串转数字)
更新:2022-11-15 03:39
本文目录一览:
js怎么把字符串转换成数字?
num1 = parseFloat($("#id").val());
JS 中转换函数有两个:parseInt()
和 parseFloat()
,前者将字符串转换为 int
类型,后者转换为 float
类型。
追加一点小技巧:
在 js 里,其实也可以这么做将字符串转为数字:
num1 = $("#id").val() - 0;
取到的字符串减 0 也可以转为数字类型,加 0 是不行的,因为 +
操作符存在类似过载的情况(在 JS 中可能不叫操作符过载)。
在JS中如何把字符串转成数字
在 js 里面,用 parseInt
就行:
var num1 = parseInt("1");
var num2 = Number("2"); // 或者
也有:
parseFloat()
parseDouble()
js 字符串与数字类型互换的方法
一、字符串转换为数字:
在 js 读取文本框或者其它表单数据的时候获得的值是字符串类型的,例如两个文本框 a 和 b,如果获得 a 的 value
值为 11,b 的 value
值为 9,那么 a.value
要小于 b.value
,因为它们都是字符串形式的。所以在比较前需要将它们各自的值转换为 Number
类型。
主要的方法有三种:
- 转换函数
- 强制类型转换
- 利用 js 变量弱类型转换
1. 转换函数 parseInt()
和 parseFloat()
parseInt(str)
:将字符串类型转换为整型,当函数的参数不是字符串时,函数返回NaN
(Not a Number)。parseFloat(str)
:将字符串类型转换为浮点型,当函数的参数不是字符串时,函数返回NaN
。 注1:凡是一切表示数的形式的字符串都可以通过上面的两个函数转化为数字,例如:- 普通的数字:
parseInt('123')
// 123 - 浮点数:
parseInt('123.45')
// 123 - 十六进制数:
parseInt('0x11')
// 17 - 科学计数法:
parseInt('3e12')
// 3;parseInt('13e12')
// 13 注2:parseInt()
函数支持十六进制形式的字符串转换为整型,但是parseFloat()
函数不支持十六进制形式的字符串转换为浮点型,但是会返回数字0
。原因是parseFloat()
函数将参数为十六进制的字符串"0x11"
的第一个字符零(0)看做数字,将其他的忽略。
2. 强制类型转换
可使用强制类型转换(type casting)处理转换值的类型。使用强制类型转换可以访问特定的值,即使它是另一种类型的。 ECMAScript 中可用的 3 种强制类型转换如下:
Boolean(value)
——把给定的值转换成 Boolean 型;Number(value)
——把给定的值转换成数字(可以是整数或浮点数);String(value)
——把给定的值转换成字符串。 用这三个函数之一转换值,将创建一个新值,存放由原始值直接转换成的值。这会造成意想不到的后果。 当要转换的值是至少有一个字符的字符串、非 0 数字或对象时,Boolean()
函数将返回true
。如果该值是空字符串、数字 0、undefined
或null
,它将返回false
。
3. 利用 js 变量弱类型转换
二、数字转换为字符串
1. 强制类型转换:String(value)
——把给定的值转换成字符串。
2. 利用 js 变量弱类型转换:数字 + 字符串 // 123+"456"
------"123456"
JS如何将字符串转成数字,情况比较复杂
js 提供了 parseInt()
和 parseFloat()
两个转换函数。前者把值转换成整数,后者把值转换成浮点数。只有对 String 类型调用这些方法,这两个函数才能正确运行;对其他类型返回的都是 NaN
(Not a Number)。
例如:
parseInt("1234blue"); // returns 1234
parseInt("0xA"); // returns 10
parseInt("22.5"); // returns 22
parseInt("blue"); // returns NaN
javascript 字符串怎么转成数字类型
方法主要有三种:
- 转换函数
- 强制类型转换
- 利用 js 变量弱类型转换
用函数
parseInt()
和parseFloat()
两个转换,前者把值转换成整数,后者把值转换成浮点数。只有对 String 类型的数字字符串调用这些方法,这两个函数才能正确运行;对其他类型返回的都是NaN
(Not a Number)。
parseInt("1234blue"); // 结果 1234
parseInt("0xA"); // 结果 10
parseInt("22.5"); // 结果 22
parseInt("blue"); // 结果 NaN
parseFloat("1234blue"); // 结果 1234.0
parseFloat("0xA"); // 结果 NaN
parseFloat("22.5"); // 结果 22.5
parseFloat("22.34.5"); // 结果 22.34
2. 强制类型转换
Number(value)
——把给定的值转换成数字(可以是整数或浮点数);
Number(false) // 结果 0
Number(true) // 结果 1
Number(undefined) // 结果 NaN
Number(null) // 结果 0
Number("5.5 ") // 结果 5.5
Number("56 ") // 结果 56
Number("5.6.7 ") // 结果 NaN
Number(new Object()) // 结果 NaN
Number(100) // 结果 100
3. 利用 js 变量弱类型转换
var str = '012.345 ';
var x = str - 0;
x = x * 1; // x 为数字类型
进行了算术运算,实现了字符串到数字的类型转换,不过这个方法不推荐。