![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JavaScript
文章平均质量分 90
JavaScript 红宝书笔记
Samuel_luo。
这个作者很懒,什么都没留下…
展开
-
JavaScript 工作者线程学习笔记
工作者线程价值:允许把主线程的工作转嫁给独立的实体,而不会改变现有的单线程模型工作者线程简介JavaScript实际上是运行在托管操作系统中的虚拟环境;浏览器中每打开一个界面,就会分配一个它自己的环境;每个页面就相当于一个沙盒,不会干扰其它界面;所有的这些环境都是并行执行的使用工作者线程,浏览器可以在原始页面环境之外再分配一个完全独立的二级子环境,这个子环境不能与依赖单线程交互的API(如DOM)互操作,但可以与父环境并行执行代码工作者线程与线程工作者线程与线程有一些相似之处: 工作者线程是原创 2021-08-30 18:52:42 · 893 阅读 · 0 评论 -
JavaScript JSON学习笔记
JSON一种数据格式,本质是对象;它不属于JavaScript,只是拥有相同的语法语法JSON支持三种类型的值: 简单值:字符串、数值、布尔值和null;但是undefined不行 对象:键值对组成的数据类型 数组JSON没有变量、函数、对象实例的概念;JSON的所有标记都只是为了表示结构化数据,虽然它借用了JavaScript的语法,但是二者本质上有区别简单值最简单的JSON可以是一个数值,例如:5;还可以是一个字符串,例如:"hello"JavaScript字符串与JSON字符原创 2021-08-23 17:07:44 · 84 阅读 · 0 评论 -
JavaScript 客户端存储学习笔记
客户端存储cookieHTTP cookie通常也叫做cookie,最初用于在客户端储存绘画信息;这个规范要求服务器在响应HTTP请求时,通过发送Set-CookieHTTP头部包含会话信息名和值在发送时都会经过URL编码;浏览器会储存这些会话信息,并在之后的每个请求中都会通过HTTP头部cookie再将它们发回服务器这些发送回服务器的额外信息可用于唯一标识发送请求到客户端限制cookie是与特定域绑定的;设置cookie后,它会与请求一起发送到创建它的域;这样可以保证cookie中储存的信息只原创 2021-08-25 23:20:21 · 481 阅读 · 0 评论 -
JavaScript 模块学习笔记
模块理解模块模式将逻辑分块,各自封装,相互独立,每个块自行决定对外暴露什么,同时自行决定引入执行哪些外部代码模块标识符模块标识符是所有模块系统通用的概念;模块系统本质上是键/值实体,每个模块都有个可用于引用它的标识符;这个标识符在模拟模块系统中可能是字符串,在原生实现的模块系统中可能是模块文件的实际路径原生浏览器模块标识符必须提供实际JavaScript文件的路径;除了文件路径,Node.js还会搜索node_modules目录,用标识符去匹配包含index.js目录模块依赖模块系统的核心是管原创 2021-08-25 23:20:58 · 197 阅读 · 0 评论 -
JavaScript 最佳实践学习笔记
最佳实践可维护性协作开发中的代码量很惊人,大多数开发者会花大量时间去维护别人写的代码;让自己的代码更容易维护,可以保证其它开发者更好地完成自己的工作什么是可维护代码容易理解:无需求助原始开发者,任何人一看代码就知道干什么,以及怎么实现符合常识:代码中一切都显得顺理成章容易适配:即使数据发生变化也不用完全重写容易扩展:代码架构经过认真设计,支持未来的功能容易调试:出问题时代码可以给出明确信息编码规范编码规范对JavaScript而言非常重要,因为这门语言实在太灵活了1、可读性想要代码容原创 2021-08-31 17:17:49 · 170 阅读 · 0 评论 -
JavaScript 网络请求与远程资源学习笔记
网络请求与远程资源XMLHttpRequest,实际上是Web过时规范的产物,应该只旧版浏览器中使用;实际开发中应该尽可能使用fetch()AJAX—asychronous javascript and xmlAJAX 不是新的编程语言,而是一种使用现有标准的新方法AJAX 是与服务器交换数据并更新部分网页的艺术,在不重新加载整个页面的情况下AJAX = 异步 JavaScript 和 XMLAJAX 是一种用于创建快速动态网页的技术XMLHttpRequest对象所有的现代浏览器都通过XM原创 2021-08-23 17:08:36 · 632 阅读 · 0 评论 -
JavaScript 处理XML学习笔记
处理XML浏览器对XML DOM的支持在正式标准问世前,很多浏览器就开始实现自己的XML解析方案,不同浏览器对标准的支持不仅有级别上的差异,也有实现上的差异;DOM Level 3增加了解析和序列化的能力;在DOM Level 3制定完成时,大多数浏览器也已实现了自己的解析方案DOM Level 2 Core12章中所述,DOM Level 2 增加了document.implementation的createDocument()方法,用于创建XML文档let xmldom = document.原创 2021-08-23 17:06:45 · 1382 阅读 · 0 评论 -
JavaScript ECMAScript学习笔记
JAVASCRIPT语言(负责前端行为)· 解释性语言:JavaScript、php优点:跨平台逐行翻译成机械语言缺点:稍微慢· 编译性语言:c、c++优点:快通篇翻译成机械语言缺点:移植性不好(不跨平台)· oak语言:Java1、JavaScript是单线程2、ECMA标注:为了取得技术优势,微软推出了JScript,CEnvi推出ScriptEase,与JavaScript同样可在浏览器上运行。为了统一规格JavaScript兼容于ECMA标准,因此也称为ECMAScript。原创 2021-06-11 14:42:23 · 667 阅读 · 2 评论 -
JavaScript 错误处理与调试学习笔记
错误处理与调试浏览器错误报告所有主流桌面浏览器都提供了向用户报告错误的机制;默认情况下,所有浏览器都会隐藏错误信息;因为除了开发者外这些信息对其他人没有什么用,还有就是网页在正常操作中报错的固有特性桌面控制台所有的现代桌面浏览器都会通过控制台暴露错误,不同浏览器进入控制台方式不一样,详情看红宝书p675移动控制台浏览器不会直接在移动设备上提供控制台界面错误处理有良好的错误处理策略可以让用户知道发生了什么;为此必须理解各种捕获和处理JavaScript错误方式try/catch语句ECMA原创 2021-08-23 17:05:53 · 337 阅读 · 0 评论 -
JavaScript BOM学习笔记
BOM(Browser Object Model)window对象BOM的核心是window对象,表示浏览器实例window对象在浏览器中有两重身份,一个是es中的global对象,另一个是浏览器窗口的js接口网页中定义的所有对象、变量和函数都以window作为其Global对象,都可以访问其上定义的全局方法Global作用域所有通过var声明的全局变量和函数都会称为window对象的属性和方法窗口关系top:始终指向最上层窗口(最外层),即浏览器窗口本身parent:始终指向当前窗口的父原创 2021-08-13 18:17:09 · 228 阅读 · 0 评论 -
JavaScript 表单脚本学习笔记
表单脚本表单基础Web表单在HTML中以form元素表示,在js中以HTMLFormElement类型表示HTMLFormElement类型继承自HTMLElement,但是它有自己的属性和方法: acceptCharset:服务器可以接收的字符集,HTML的accept-charset属性 action:请求的URL,HTML的action属性 elements:表单中所有控件的HTMLCollection enctype:请求的编码类型,HTML的enctype属性 lengt原创 2021-08-14 14:40:45 · 212 阅读 · 0 评论 -
JavaScript API学习笔记
JavaScript APIWeb API数量之多令人难以置信,这里我们了解开发中常用的一些Atomics与SharedArrayBuffer多个上下文访问SharedArrayBuffer时,如果同时对缓冲区进行操作,可能出现资源争用问题Atomic API通过强制同一时刻只能对缓冲区执行一个操作,让多个上下文安全地读写一个SharedArrayBuffer;Atomic API是ES2017中定义(类似于操作系统的原语)SharedArrayBufferSharedArrayBuffer与A原创 2021-08-23 17:04:45 · 661 阅读 · 0 评论 -
JavaScript 事件学习笔记
事件事件流——事件冒泡流、事件捕获流事件流描述页面接收事件的顺序冒泡结构上(非视觉上)嵌套关系的元素会存在冒泡事件功能,及同一事件,子元素向父元素冒泡捕获IE没有将addEventListener第三个参数设置true结构上(非视觉上)嵌套关系的元素会存在捕获事件功能,及同一事件,父元素向子元素捕获DOM事件流DOM2 Event规范规定事件流分三阶段:事件捕获、到达目标、事件冒泡通常不认为到达目标后的事件处理阶段不属于事件捕获,而被认为是冒泡阶段的一部分现代浏览器会在捕获阶段在事件原创 2021-08-14 14:32:26 · 617 阅读 · 0 评论 -
JavaScript DOM学习笔记
DOM(Document Object Model)dom提供了操作html和xml的机会,他是一个操作html和xml功能的一类对象的集合DOM的基本操作document代表整个文档NodeList,一种节点集合有item(x)方法(与NodeList[x]效果一样)HTMLCollection,HTML文档中的一种集合类型该集合是对元素的引用,也就是说不是元素的闪照有item(x)方法;有namedItem(name)方法,通过标签的name属性获取某一项的引用(可以直接用中括号使用如原创 2021-08-13 18:15:59 · 659 阅读 · 0 评论 -
JavaScript 动画与Canvas图形学习笔记
动画与Canvas图形使用requestAnimationFrame早期定时动画早期动画就是使用setInterval()来控制动画的执行无论是setInterval()还是setTimeout()都是不能保证时间精度的。作为第二个参数的延时只能保证何时将代码添加到任务队列,不能保证添加到队列就会立即执行时间间隔的问题浏览器自身计时器会让这个问题雪上加霜,浏览器的计时器精度不足毫秒,以下是浏览器几个计时器精度情况: IE8及更早版本的计时器精度为15.625秒 IE9及更晚版本的计时器精原创 2021-08-14 14:39:38 · 375 阅读 · 0 评论