摘要:
## 组件的概念 组件是对可重用的HTML与JS功能的封装。 在没有组件的时候,同样的HTML结构会在文档中多次出现,使代码变得复杂。 在使用组件封装后,就像使用一个HTML标签那样使用这些HTML结构,HTML文档变得清晰易维护。 它主要由三项技术实现: - Custom Element: 自定义 阅读全文
摘要:
## 文档坐标、窗口坐标和容器坐标 文档中元素的位置以CSS像素度量,有两种参考系,一是文档左上角,二是窗口左上角。基于这两个原点的两个坐标系被称作文档坐标与窗口坐标。 由于CSS的overflow属性允许文档中的元素包含的内容超出其所能显示区域,此时元素有自己的滚动条,其作为自身内容的窗口,而不是 阅读全文
摘要:
## 操作CSS类 Element对象的classList属性是一个DOMTokenList对象,它是一个类数组对象,可迭代;有可以像Set对象那样添加和移除元素。 ``` ELement.classList.add('hidden'); Element.classList.remove('hidd 阅读全文
摘要:
## 概述 全局的Window对象有一个document属性,它引用一个Document对象,通过该对象操作DOM。 ## 选择DOM元素 HTML文档中的\与\标签可以通过Document对象的head与body属性访问,但是更深层级的元素需要通过查询来获取。 有两组方法来选择元素,一组是通过CS 阅读全文
摘要:
为了保证安全,浏览器中的JavaScript不能读写设备中的文件,也不能访问任意的服务器。 ## 同源策略 同源策略指的是脚本只能访问与包含它的文档同源资源。 源是指文档URL中的协议、主机与端口部分,完全相同则是同源,任意一项不同都不是同源。 脚本文件的URL与同源策略毫不相干,同源策略至于脚本的 阅读全文
摘要:
## 未被捕获的异常 在程序中,往往会出现异常。虽然主动捕获这些异常是保证程序健壮的必要做法,但是难免会漏掉一些。 对于未被捕获的异常,浏览器会在控制台显示一条错误信息,该信息包含异常信息和其在代码中出现的位置。 ## window.onerror Window对象有一个onerror属性,将其指定 阅读全文
摘要:
## 任务执行机制 javascript程序是单线程运行的,意味着执行多个任务需要将它们排队。 根据应用场景的不同,任务被分为同步任务与异步任务。 同步任务即是立即执行的代码,由JavaScript线程执行。 异步任务是由宿主环境开辟新的线程来执行,在任务完成后通知主线程。异步任务是基于回调实现的。 阅读全文
摘要:
## 概念 客户端JavaScript程序使用异步事件驱动的编程模型。 浏览器会在文档、浏览器或某些元素或与之关联的对象发生某些事情时生成事件对象。比如文档加载完成、敲击键盘输入等。 JavaScript程序可以给某些对象绑定监听器函数来监听特定的事件,在该对象上发生指定事件时,这些函数会被执行。 阅读全文
摘要:
## 前言 在js编程中,模块指的是按照一定格式将代码以功能拆分后作为独立文件存在的一个实体。 早期的JS并没有规定模块应该如何设计,核心语言也没有针对模块提供相关支持。 早期的代码使用IIFE来实现一个模块, 它是通过向全局对象添加属性来实现与其他模块来交互的。 ``` (function() { 阅读全文
摘要:
## 概念 在js中,函数与其他类型一样,是一个支持所有操作的值,是一个对象,是编程语言里的“一等公民” 函数是一个代码块,每被调用一次,其代码就会执行一次。 函数有一个被`{}`包裹的函数体,具体的逻辑代码就写在里面。 使用return关键字返回函数的计算结果,如果没有返回值,那函数调用表达式的值 阅读全文