JavaScript 中,用 async + await 和直接同步方式执行有什么区别?意义是什么?

你一定要先理解以下重点内容:你要把 JS 里执行分为两种。第一种是实打实必须由 JS 线程执行的,比如做一些去算一个文件的 MD5 值,这种一般没人写异步,没好处,都是同步计算。第二种不是由 JS 线程去执行,只是 JS 把任务提交给它,然后傻了吧唧的啥也不干等它完成并返回结果给自己。比如你调用浏览器接口去网络上下载图片,此时你的 JS 线程是把任务提交给了

发布 05-14 阅读 10分钟

前端数据建模指南

什么是前端数据建模?提到数据建模,大多数人第一时间想到的都是和后端、数据这些方面相关的内容。而前端数据建模,似乎让人感到陌生。那么我通过回答下面几个问题,来统一一下我们对前端数据建模概念的理解。什么是数据建模?数据建模是对业务逻辑所使用的数据以及这些数据之间的关系进行分析和定义的过程。数据建模有何意义?为团队成员之间的协作创建一种统一的模式。通过定义数据需求

发布 05-03 阅读 20分钟

学废了,JavaScript 中的作用域与作用域链

什么是作用域?作用域定义了变量的可见性或可访问性。大白话来说,就是一个变量能不能被访问或引用,是由它的作用域决定的。在 JavaScript 中有三种作用域。全局作用域函数作用域(局部作用域)块作用域全局作用域 Global Scope一个在最外层定义的变量便处于全局作用域,全局作用域内的变量可以在程序的任意地方访问。输出:jsx函数内访问: 全局作用域

发布 2021-12-01 阅读 13分钟

前端工程化:有效地进行拼写检查

拼写错误导致的问题在项目开发过程中,即使我们再细心,也难免忙中出错,犯下很多低级的错误。比如这样:我们错把 field 拼写成 filed,这样打印出来的是 undefined,而不是预期的 name。ESLint 的基本介绍但是幸运的是,有一些 Lint 工具会在这方面提供一些帮助。比如在 TypeScript 中,会有一个错误提示。虽然这个提示提供的消息

发布 2021-11-26 阅读 16分钟

钉钉与企业微信谁赢了?

钉钉用户数突破4亿,平均四个中国人里就有一个使用钉钉,这是在疫情这个黑天鹅事件后钉钉交出的成绩单,而企业微信的活跃用户为1.3亿,三倍的用户差距,钉钉赢了吗?SaaS 行业的崛起雷军说过,站在风口上,猪也会飞。而 SaaS(Software as a Service 软件即服务,指企业客户通过互联网来获得厂商的软件服务)领域,则是互联网巨头们认定的下一个风口

发布 2021-03-09 阅读 13分钟