1. 什么是生命周期? 通俗地讲,就是一个变量的生老病死,也就是从哪到哪有效。
    从软件的角度来看,是指程序的创建和调用(开始、暂停、唤起、停止、卸载)的过程。
  2. 生命周期什么时候初始化?在变量声明时初始化! 局部变量在函数执行完后销毁
    全局变量在页面关闭后销毁
  3. 如何判断是局部还是全局变量?!! 方法内部定义变量的时候,如果没有加var,就是全局变量,否则为局部变量
    于果方法还没有执行,辣么,它内部的全局变量是不会声明并且定义滴!

HTML 页面的生命周期包含三个重要事件:

  • DOMContentLoaded —— 浏览器已完全加载 HTML,并构建了 DOM 树,但像 <img> 和样式表之类的外部资源可能尚未加载完成。
  • load —— 浏览器不仅加载完成了 HTML,还加载完成了所有外部资源:图片,样式等。
  • beforeunload/unload —— 当用户正在离开页面时。

每个事件都是有用的:

  • DOMContentLoaded 事件 —— DOM 已经就绪,因此处理程序可以查找 DOM 节点,并初始化接口。
  • load 事件 —— 外部资源已加载完成,样式已被应用,图片大小也已知了。
  • beforeunload 事件 —— 用户正在离开:我们可以检查用户是否保存了更改,并询问他是否真的要离开。
  • unload 事件 —— 用户几乎已经离开了,但是我们仍然可以启动一些操作,例如发送统计数据。

DOMContentLoaded

DOMContentLoaded 事件发生在 document 对象上。

我们必须使用 addEventListener 用来捕获DOMContentLoaded

document.addEventListener("DOMContentLoaded", ready);
// 不是 "document.onDOMContentLoaded = ..."