亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

hobby[parseInt(j)-1].checked=true; 求問解釋

<!DOCTYPE HTML>
<html>
??? <head>
??????? <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
??????? <title>無標題文檔</title>
??? </head>
?? ?
??? <body>
??????? <form>
????????? 請選擇你愛好:<br>
????????? <input type="checkbox" name="hobby" id="hobby1">? 音樂
????????? <input type="checkbox" name="hobby" id="hobby2">? 登山
????????? <input type="checkbox" name="hobby" id="hobby3">? 游泳
????????? <input type="checkbox" name="hobby" id="hobby4">? 閱讀
????????? <input type="checkbox" name="hobby" id="hobby5">? 打球
????????? <input type="checkbox" name="hobby" id="hobby6">? 跑步 <br>
????????? <input type="button" value = "全選" onclick = "checkall();">
????????? <input type="button" value = "全不選" onclick = "clearall();">
????????? <p>請輸入您要選擇愛好的序號,序號為1-6:</p>
????????? <input id="wb" name="wb" type="text" >
????????? <input name="ok" type="button" value="確定" onclick = "checkone();">
??????? </form>
??????? <script type="text/javascript">
??????? function checkall(){
??????????? var hobby = document.getElementsByTagName("input");
?????????? for(var i=0;i<bobby.length;i++){
?????????????? hobby[i].checked=true;
?????????? }
??????? }
????? ?
??????? function clearall(){
??????????? var hobby = document.getElementsByName("hobby");
?????????? ?
???????? for(var i=0;i<hobby.length;i++){
???????????? hobby[i].checked=false;
???????? }// 任務2?????? ?
??????? }
?????? ?
??????? function checkone(){
??????????? var j=document.getElementById("wb").value;
?????? ?
???????? for(var i=0;i<hobby.length;i++)// 任務3
????????? if(parseInt(j) > 6 || parseInt(j)? < 1? ){
??????????????????? alert("不在此范圍內,請重新輸入!")
??????????????????? // document.write(j);
??????????????? }
??????????? }
??????????? var hobby = document.getElementsByName("hobby");??? ?
??????????? hobby[parseInt(j)-1].checked=true;
??????? }
?????? ?
??????? </script>
??? </body>
</html>

  1. 加粗部分的parseInt(j)-1 應該怎么解釋?

  2. 為啥要用parseInt這個函數??????????????????????????????? 感激不盡·····


正在回答

3 回答

應該是防止出現小數吧,要是輸個3.3咋辦,用parseInt(j)轉成整數了,就安全唄,

hobby[parseInt(j)-1樓上樓上也說了,就是因為數組的下標是從0開始的,但我們看復選框是從1開始數的,即我們看到的第一個復選框 對應 數組里面下標為0的內容

0 回復 有任何疑惑可以回復我~

parseInt() 函數可解析一個字符串,并返回一個整數。

0 回復 有任何疑惑可以回復我~

很容易理解,你輸入的是1-6對應數組0-5,當然要減一

其實可以不用parseInt也可以,因為會自動轉換格式。當然用了從邏輯上更加說得過去,因為j得到的是個字符型的,要把它變為整型才可以做運算,當然做減法時會自動轉為整型(加法不行)

1 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

hobby[parseInt(j)-1].checked=true; 求問解釋

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號