为了账号安全,请及时绑定邮箱和手机立即绑定

value的值是什么格式?

value的值是什么格式?

刘毅毅 2016-11-04 00:33:17
 <input id="wb" name="wb" type="text" >var j=document.getElementById("wb").value;             clearall();             var hobby = document.getElementsByName("hobby");             if(parseInt(j)<0||parseInt(j)>6)             {               alert("请重新输入1-6的整数");             }             else{               hobby[j-1].checked="checked";这句if(parseInt(j)<0||parseInt(j)>6)把j的值转换成int来比较大小,但是为什么下面这句hobby[j-1].checked="checked";直接用j-1,难道数组(getElementsByName算数组吧)里的编号不需要用数字格式吗?
查看完整描述

3 回答

已采纳
?
千秋此意

TA贡献158条经验 获得超187个赞


是因为减法运算会进行隐式转换,value的值(j)本身是字符串类型,直接用 j - 1 会先把 j 隐式转换成 数字类型 再进行减法运算,相当于 Number(j) - 1

查看完整回答
3 反对 回复 2016-11-04
?
程序猴jason

TA贡献9条经验 获得超6个赞

你可以用typeof查看类型,value的值的类型是string,如果是+不会进行隐式转换,但减法(-),除法(、),乘法(*)都会进行隐式转换,因为+号可以做加法,也可以当拼接用!!!


查看完整回答
1 反对 回复 2016-11-04
?
Jeson_Wei

TA贡献4条经验 获得超3个赞

js是弱类型语言,做减法会将变量或常量自动转型

查看完整回答
1 反对 回复 2016-11-04
  • 3 回答
  • 0 关注
  • 1564 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信