包管理工具 1. npm 包管理工具 npm: Node Package Manager,也就是Node 包管理器; 但是目前已经不仅仅是 Node 包管理器了,在前端项目中我们也在使用它来管理依赖的包; 比如 … 2023年8月6日 JavaScriptcnpm、npm、npx、pnpm、yarn
实现防抖节流-深拷贝-事件总线 1. 防抖 Debounce 函数 我们用一副图来理解一下它的过程: 当事件触发时,相应的函数并不会立即触发,而是会等待一定的时间; 当事件密集触发时,函数的触发会被频繁的推迟; 只有等待了一段时间也… 2023年8月6日 JavaScriptjs、事件总线、节流、防抖
Iterator和Generator是什么 1. 迭代器 1.1. 什么是迭代器? 迭代器(iterator),使用户在容器对象(container,例如链表或数组)上遍访的对象,使用该接口无需关心对象的内部实现细节。 其行为像数据库中的光标,… 2023年8月6日 JavaScriptgenerator、iterator、js
关于Promise 1. 什么是 Promise Promise 是一个类,可以翻译成 承诺、许诺、期约; 当我们需要的时候,给予调用者一个承诺:待会儿我会给你回调数据时,就可以创建一个 Promise 的对象; 在通过… 2023年8月6日 JavaScriptjs、promise
this指向 1. this 指向 函数在调用时,JavaScript 会默认给 this 绑定一个值; this 的绑定和定义的位置(编写的位置)没有关系; this 的绑定和调用方式以及调用的位置有关系; th… 2023年8月4日 JavaScriptjs、this
web 安全 1. Web 安全 1.1. XSS 1.1.1. 描述 跨站脚本(英语:Cross-site scripting,通常简称为:XSS)是一种网站应用程序的安全漏洞攻击,是代码注入的一种。它允许恶意用… 2023年8月4日 JavaScriptCSRF、web安全、XSS
事件循环与异步 1. 前言 简介: 关键词:多进程、单线程、渲染、事件循环、消息队列、异步、微任务 你是不是有过以下困惑: 我执行了一段 js,页面就卡了挺久才有响应 多个方法互相嵌套,但是最终还是蒙对了 我用 se… 2023年8月4日 JavaScript事件循环、异步、微任务、消息队列、线程
浏览器渲染原理 1. 浏览器是如何渲染页面的? 当浏览器的网络线程收到 HTML 文档后,会产生一个渲染任务,并将其传递给渲染主线程的消息队列。 在事件循环机制的作用下,渲染主线程取出消息队列中的渲染任务,开启渲染流… 2023年8月4日 JavaScript原理、浏览器渲染原理