js字符串转数字小结
发布网友
发布时间:2024-09-17 10:39
我来回答
共1个回答
热心网友
时间:2024-09-29 15:18
JS字符串转数字方法总结
在JavaScript中,转换字符串为数字有多种常用技巧,如运算符(-, *, /, >>, <<, >>>, ~~),以及内置函数parseInt, parseFloat,以及一元操作符+。这些方法在处理前都会自动进行trim()去除前后空格。
方法主要分为三类:
1. 基本转换运算符和Number()函数
这些操作符如-、*、/和一元+,在非数字输入时,会隐式调用Number()函数。Number()遵循的规则包括:只包含数字和浮点格式的字符串转换为数值,以0x开头的十六进制格式转换为十进制,空字符串转为0,其他格式则返回NaN。
2. 位运算符(>>, <<, >>>, ~~)
这些针对字符串32位二进制数的位操作,只对包含数字或有效十六进制格式的字符串有效,如~(按位非)操作会将数值取反,>>和<<进行左移和右移,>>>则是无符号右移。
3. parseInt和parseFloat函数
parseInt默认以10为基数,解析字符串到无效数值或遇到非数字字符时停止。如果以0x开头,支持16进制转换。parseFloat则类似,但不支持基数选择。
热心网友
时间:2024-09-29 15:14
JS字符串转数字方法总结
在JavaScript中,转换字符串为数字有多种常用技巧,如运算符(-, *, /, >>, <<, >>>, ~~),以及内置函数parseInt, parseFloat,以及一元操作符+。这些方法在处理前都会自动进行trim()去除前后空格。
方法主要分为三类:
1. 基本转换运算符和Number()函数
这些操作符如-、*、/和一元+,在非数字输入时,会隐式调用Number()函数。Number()遵循的规则包括:只包含数字和浮点格式的字符串转换为数值,以0x开头的十六进制格式转换为十进制,空字符串转为0,其他格式则返回NaN。
2. 位运算符(>>, <<, >>>, ~~)
这些针对字符串32位二进制数的位操作,只对包含数字或有效十六进制格式的字符串有效,如~(按位非)操作会将数值取反,>>和<<进行左移和右移,>>>则是无符号右移。
3. parseInt和parseFloat函数
parseInt默认以10为基数,解析字符串到无效数值或遇到非数字字符时停止。如果以0x开头,支持16进制转换。parseFloat则类似,但不支持基数选择。