JavaScript
愿得一人心&&
一个不知名的大学的一个不知名的学生
展开
-
JavaScript 将类数组转换为真正的数组
JavaScript 将类数组转换为真正的数组// 摘抄自Promise源代码var iterableToArray = function (iterable) { if (typeof Array.from === "function") { // ES2015+, iterables exist iterableToArray = Array.from; return Array.from(iterable); } // ES5, only arrays and原创 2020-06-07 16:30:07 · 366 阅读 · 0 评论 -
JavaScript 事件队列
JavaScript 事件队列JavaScript 是单线程执行代码片段的。早期历史早期(ES6 之前)的 JavaScript 引擎只负责子啊合适的时候执行某一个 JavaScript 代码段,此时的代码主要是被分为很多的事件,然后按照一定的顺序(事件循环队列)进行执行。此时的事件队列主要是靠宿主环境(此时一般都为浏览器)来维护的,存在很多的不可靠性。ES6 的事件队列ES6 之后,由于 Promise 的出现,JavaScript 引擎开始对事件循环队列进行直接控制,从而出现了事件队列(宏任务原创 2020-06-07 12:47:51 · 768 阅读 · 0 评论 -
自主实现 Promise.all
自主实现 Promise.all源码// 测试数据const p = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10].map((it) => Promise.resolve(it));/** * @description 实现Promise.all的函数 * @param {Promise<T>[]} array * @returns Promis...原创 2020-05-07 22:30:27 · 384 阅读 · 0 评论 -
你不知道的JS——读书笔记
基本的编译原理1. 词法分析var a = 2;=>var、a、=、2、;2. 语法分析将词法分析得到的代码块转换为 AST(Abstract Syntax Tree 抽象语法树)3. 代码生成将 AST 转换为可执行的代码JavaScript 编译原理角色:1.编译器 2.作用域 3.引擎实例代码:var a = 2;过程描述:1. 当编译器遇到 var a 声明编...原创 2020-04-11 22:14:18 · 207 阅读 · 0 评论 -
lms-client基于React和Ant design的前端项目笔记
项目是开源的,欢迎starps:项目地址lms_serverhttps://gitee.com/tomatogitee/lms_server.gitlms_clienthttps://gitee.com/tomatogitee/lms_client.gitTip:两个项目是一起的,建议一起克隆下来。码云的克隆速度非常快,这里点个赞吧。更新时间:2020年04月10日MiniCs...原创 2020-04-10 10:38:17 · 506 阅读 · 0 评论 -
lms-server基于koa的后台服务器项目笔记
项目是开源的,欢迎starps:项目地址lms_serverhttps://gitee.com/tomatogitee/lms_server.gitlms_clienthttps://gitee.com/tomatogitee/lms_client.gitTip:两个项目是一起的,建议一起克隆下来。码云的克隆速度非常快,这里点个赞吧。更新时间:2020年04月10日webpac...原创 2020-04-10 10:21:20 · 330 阅读 · 0 评论 -
eslint校验规则——基于官方文档全面总结
Tip:基于ESLint中文网创作更新时间:2020年04月09日Javascript容易出错的地方(基础错误)for-direction强制 “for” 循环中更新子句的计数器朝着正确的方向移动getter-return强制 getter 函数中出现 return 语句no-async-promise-executor禁止使用异步函数作为 Promise executor...原创 2020-04-09 22:12:11 · 1183 阅读 · 1 评论 -
eslint项目配置——Typescript
非 react 项目的 eslint 配置{ //是否针对根目录进行检测 "root": true, //指定代码运行的寄主环境 "env": { //防止__dirname不能识别的错误 "node": true, //自动启用es6语法和ES6全局变量 "es6": true }, //继承的配置 "extends": [ ...原创 2020-04-09 11:05:32 · 1078 阅读 · 0 评论 -
验证表单——JavaScript方法设计的工程化
背景:验证表单功能,内容为:验证用户名/邮箱/密码等小白(我会想到的)写法:function checkName(){ //验证姓名}function checkEmail(){ //验证邮箱}function checkPassword(){ //验证密码}......使用方式:单个调用函数(变量)checkName();问题——即:这样设计跟添加了...原创 2019-07-04 17:08:35 · 175 阅读 · 0 评论