tes*_*dtv 126 html javascript parseint
可能重复:
在Javascript中截断字符串的前导零
在Javascript中从数字中删除前导零的最简单和跨浏览器兼容的方法是什么?
例如,如果我有一个文本框值为014或065,它应该只返回14或65
nav*_*een 200
试试parseInt.
parseInt("065", 10);
Run Code Online (Sandbox Code Playgroud)
基数
一个整数,表示上述字符串的基数.始终指定此参数以消除读者混淆并保证可预测的行为.当未指定基数时,不同的实现会产生不同的结果.
.............
.............
如果基数未定义或0(或不存在),JavaScript假定如下:
- 如果输入字符串以"0x"或"0X"开头,则基数为16(十六进制),并解析字符串的其余部分.
- 如果输入字符串以"0"开头,则基数为八(八进制)或10(十进制).究竟选择哪个基数是依赖于实现的.ECMAScript 5指定使用10(十进制),但并非所有浏览器都支持此功能.因此,在使用parseInt时始终指定基数.
- 如果输入字符串以任何其他值开头,则基数为10(十进制).
例如,在一些实现parseInt("01803")中将产生1.假设目标是获取1803,调用基数为10的parseInt以确保解析在基本十进制编号系统中完成.那就是:parseInt("01803", 10)会屈服1803.请注意,对于非整数值,parseInt()将对数字进行舍入以作为整数返回.paseInt("018.03", 10)会屈服18.
key*_*one 164
正则表达式:
"014".replace(/^0+/, '')
Run Code Online (Sandbox Code Playgroud)
Fel*_*ing 23
目前尚不清楚为什么要这样做.如果要获得正确的数值,可以使用一元+ [docs]:
value = +value;
Run Code Online (Sandbox Code Playgroud)
如果您只想格式化文本,那么正则表达式会更好.这取决于你要处理的价值我会说.如果你只有整数,那么
input.value = +input.value;
Run Code Online (Sandbox Code Playgroud)
很好.当然它也适用于浮点值,但取决于你在点之后有多少位数,将它转换为数字并返回到字符串可以(至少用于显示)删除一些.
| 归档时间: |
|
| 查看次数: |
159680 次 |
| 最近记录: |