DOM相关(主要是var和let的区别用法)

一、1.节点的类型有七种,分别是:Document,DocumentType,Element,Attribute,Text,Comment,DocumentFragment

2.DOM树的根节点是:html

3.元素Element的NodeType值为:1或 Node.ELEMENT_NODE((全大写意思是不让别人改你)是一个常量,其实是变量,但全是大写,所以也为1)

4.document.body.nodeName为:'BODY'

5.

6.

7.

推论:1.全局变量可耻,不能用(容易互相覆盖)

不是div

尽量不要用ID做全局属性,但声明的selfDiv还是全局变量

把window.parent原本的值覆盖了;window.parent原本是父窗口,如果没有父窗口就是当前窗口

2. 可以用局部变量

但X又变成了全局变量

3.立即调用(声明后立即调用)

但X又变成了全局变量

就OK了,

或者用小白用的方法,即:

4.若直接声明匿名函数,并立即调用,都会被认为是语法错误,可做下面的修改

减号:告诉浏览器我后面是一个值,不是函数声明

5.js升级((ES6  2015年才出来)把var改为let)

{} 是block代码块

parent被覆盖,因为var只看函数,若后面没有函数,var就声明全局变量

所以改为新关键字,let (let作用域在块之间)

存在变量提升

相当于

所以块包不住var,只有立即执行函数才能包住

5.let是逃不出花括号的

8.childNodes返回的是伪数组

9.每次都重新看

10. 没有重新看

11.

12.

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章