typeof 输入框里面的值 就算输入为数字还是返回string



我输入数字 控制台打印出来typeof的结果还是string 这是为什么


typeof '123';
typeof 123


var value = +input.value;
这样就 OK 了


#input 中的值一定是个字符串,所以你 typeof 之后是 string。如果你想要判断是否全为数字,可以使用正则进行校验。

/^\d+$/.test('')  // false
/^\d+$/.test('123a')  // false
/^\d+$/.test('123')  // true

isNaN


因为你取出来的内容都是字符串形式的啊,你eval(value)试试


因为input.value取到的值就是字符串类型的。


input.value获取的值默认为string类型,因此获取到的1其实是'1',接楼上的,在var value=+input.value的过程中,因为+的存在,产生了一个隐式转换,所以input.value都转换成了number类型


其实你在定义的时候,就已经定义 值是字符串类型的了。

我特意试了一下input type类型改成number, 但判断后类型也是string。

w3c上有个 number类型的提示,我没测试。
提示:iPhone 的 Safari 浏览器会识别 number 输入类型 。


+'123'===123



相关阅读:
hcharts怎么设置dataLabels中的边框只有右边有
shiro的标签<shiro:principal/>显示不了内容?
自己在写博客,通过样式和功能方面想请求点意见和建议
mac创建ipv6 wifi热点无法上网
es6 + webpack在微信下没反应
laravel 5.3 passport遇到一些坑
swift3 实机测试 SWTableviewCell无法载入
shell脚本变量作用域的问题
vue怎么加载外部js?????????
如何把一个视图放在左浮动定位的视图的上面?
在线创建站点怎么实现?
cubism.js 怎么用,在哪下载,没有思路
前端包管理器解决方案?
jsoup如何选出没有被隐藏的tr元素
scrapy shell 报错521
server第一次开正常不报错,关闭后报连接错误,第二次再开serve就启动不了,为什么?
正则表达式中/\b\b/出现空字符串个数问题
JS的操作顺序具体是怎样的?
全景展示有人做过吗?给点思路。。。
获取用户ip



快速导航

Copyright © 2016 phpStudy |