Javascript DOM编程艺术 阅读笔记
第二遍读DOM编程艺术,由于第一遍看的较粗略,没有做笔记,第二遍读将会把书里一些小知识点概括出来。此文将随着阅读篇幅逐渐补充,直至读完。
1、+=操作符:可同时完成“加法和赋值”。message += year 等于 message = message + year。(20页);
2、==和===:书中23页简单提了一段,查阅一些资料后了解到,==为等于,===为恒等,后者判断时要比前者更严格些。==在判断时,会自动转换类型,例如0==“0”为true,而0===“0”则为false;为了方便其他人理解你的代码,尽量使用===,“==”带来的便利性抵不上其带来的成本,不相等也是如此(!==)。
3、全局变量和局部变量:全局变量的作用域是整个脚本,局部变量作用域为function块,{}里的区域。例如;
1 var a = 1; 2 function text() 3 { 4 alert(a); //(标记1) 5 6 a = 5; 7 alert(a); 8 9 var a; 10 } 11 text(); 12 alert(a);
其打印结果为undefined、5 、1;标记1处,为何显示undefined? 因为javascript在运行过程中,会对整个脚本的定义部分进行完整分析,在第9行中,声明了变量a,但并不会对赋值部分也进行分析,还需要按顺序执行,所以显示undefined。要怎么做才能让第一个alert结果为1?就需要搬出window来帮忙,alert(window.a);但最好还是不要重复变量名。
4、innerHTML:DOM属性,属性设置或返回表格行的开始和结束标签之间的 HTML。例如:
1 <body id="body"> 2 <div> 3 <p>12345<p> 4 </div> 5 </body>
body.innerHTML = <div><p>12345<p></div>