情景:
从html获取4对{起点元素(id记为start)和终点元素(id记为end)},
遍历起点到终点的所有元素,并打印出元素id(假设id连续)
解决方案:
Number(待转换数)进行强制转换
js代码:
扫描二维码关注公众号,回复:
1532519 查看本文章
控制台:
如上图控制台:
第一对儿元素{43,46},进入for循环正常打印43,44,45,56;
第二、三对儿元素也分别进入for循环正常打印
问题出现:
但是,
执行到start=8,end=10的时候,就不进入for循环里面打印8,9,10了
解决方案:
Number(待转换数)进行强制转换
看到第一张图的“8”,“9”;想到可能是类型的问题,就用Number包住document.getElementById("startParent").firstChild.id强制转换
问题解决。
教训:进行数字属性操作的时候,确保它是个数字
———————————————————————分割线———————————————————————————
自己写了个小demo验证,却发现程序正常运行
for(var i = 0;i <= 1;i++) { var str1 = "7";// 字符串类型 var str2 = "8";// 字符串类型 for(var j = str1;j <= str2;j++) { console.info(j); } }
控制台:
有点怪异,欢迎评论交流