带<br/>换行符的赋值
来源:互联网 发布:辐射4 画面优化设置 编辑:程序博客网 时间:2024/04/29 18:33
今天一下午因为一个带<br/>换行符的赋值给搞蒙圈了,折腾了半天才恍然大悟!
菜鸟起飞的第N天,今天把js基础知识又看了一遍,发现自己的知识体系都是bug!
废话不多说了,直接来记录下今天的总结:
<!DOCTYPE html> <html> <body> <p>点击下面的按钮来执行循环,该循环会跳过 i=3 的步进。</p> <button onclick="myFunction()">点击这里</button> <p id="demo"></p> <script> function myFunction() { var x="",i=0; for (i=0;i<10;i++) { if (i==3) { break; } x=x + "The number is " + i + "<br>"; } document.getElementById("demo").innerHTML=x; } </script> </body> </html>以上这段代码本来是学习break的用法的,然而我却发现了其他的问题:
以下是这段代码的正确输出结果:
而我原本的理解是输出结果应该为:
The number is 0
The number is 0The number is 1
The number is 0The number is 1The number is 2
然而明显这是错误的理解!
首先,document.getElementById("demo").innerHTML=x; 这个输出结果是在循环体外的,所以他只输出最后一次循环结果,其次,就算把他放到循环体内部,前两次输出结果也会被覆盖。为什么呢?因为这个是获取的id元素,一个id元素只能对应一个值。
另外,我将document.getElementById("demo").innerHTML=x;换成了 document.write(x);试了一下,放在循环体外除了一个是打印到相应获取的标签内一个是输出到整个网页上,其他循环输出的结果是一样的,但是如果把document.write(x);放到循环体内,那么结果就不一样了,以下是代码验证结果:
然后我就开始使用console.log 把循环执行的结果一步步打出来看看,结果发现我真的是愚蠢坏了!
好了,因为这次的愚蠢让我记住了教训,下次一定要善用console.log调试工具。希望以后不会再犯同样的错误
!!!
阅读全文
0 0
- 带<br/>换行符的赋值
- 解决<br /> 换行符占据空间
- Javascript:匹配所有“\r\n”的正则表达式,把换行符替换成 br
- 后台添加</br>换行
- HTML <br>换行标签
- <br>为什么会换行
- xml格式的word换行标记<w:br/>
- js将数据库中的换行符替换为<br>
- velocity 替换\n 换行符 为html <br />
- 【广告项目】换行符</br>和/n区别
- javascirpt - 字符串的换行赋值
- textarea里显示换行<br>
- php如何将html中的br换行符转换为文本输入中的换行符
- 正则替换换行符和把 br 替换成换行符
- 正则替换换行符和把 br 替换成换行符
- 正则替换换行符和把 br 替换成换行符
- 正则替换换行符和把 br 替换成换行符
- 正则替换换行符和把 br 替换成换行符
- Android studio报错
- HDU-2017 多校训练赛7-补题
- 综合---制作本地化脚本
- android studio导入cocos2dx 3.10的工程问题
- 买铅笔
- 带<br/>换行符的赋值
- JAVA开发的23种设计模式之 --- 原型模式
- 欢迎使用CSDN-markdown编辑器
- MyBatis项目查询数据库Could not find result map java.lang.String
- Window 通过cmd查看端口占用,杀死进程方法
- Spring环境下ActiveMQ的配置与应用(入门篇)
- codeforce-305A--Strange Addition (贪心)
- 数据通信基础
- Dataquest学习代码笔记