- 博客(6)
- 收藏
- 关注
原创 let、const、var 和作用域
声明一个变量时有三个可供选择的关键字: let:声明一个变量。 const:声明一个不可改变的变量,又称为常量。 var:声明一个变量,已经过时的关键字不推荐使用。 警告:var 是一个过时的关键字,已经不推荐使用。 let 以下是let与const共有的特性。 访问必须在声明之后 alert(name) // Cannot access 'name' before initialization let name = "鸣人" 不允许重新声明 let name = ...
2022-05-16 17:48:00
223
原创 JavaScript 中,用 async + await 和直接同步方式执行有什么区别?意义是什么?
你一定要先理解以下重点内容: 你要把 JS 里执行分为两种。 第一种是实打实必须由 JS 线程执行的,比如做一些去算一个文件的 MD5 值,这种一般没人写异步,没好处,都是同步计算。 第二种不是由 JS 线程去执行,只是 JS 把任务提交给它,然后傻了吧唧的啥也不干等它完成并返回结果给自己。比如你调用浏览器接口去网络上下载图片,此时你的 JS 线程是把任务提交给了浏览器,然后一直等浏览器把结果返回给你。干活的是浏览器不是你 JS 线程。 对于不干活的情况,就得用异步的写法了,不然轻则执行效率低下,重
2022-05-14 15:20:51
285
原创 JavaScript 的浅拷贝与深拷贝,栈与堆,深拷贝的多种方法,最全讲解
栈与堆 在 JavaScript 中也会将基本类型与对象类型称为值类型与引用类型。这个是因为基本类型中存储的是数据完整的值,而在引用类型中存储的仅是指向数据的一个地址。 在大部分编程语言中,变量会被存放在两个地方,栈(stack)和堆(heap)。在 JavaScript 中栈存放的就是值类型的数据和引用类型的地址,而引用类型真正的数据被存放在堆中。 当我们定义以下变量时,它们在内存中的栈堆中的存在如图所示: let name = "鸣人" let age = 18 function sayHe
2022-05-03 20:19:59
715
原创 前端数据建模指南
什么是前端数据建模? 提到数据建模,大多数人第一时间想到的都是和后端、数据这些方面相关的内容。而前端数据建模,似乎让人感到陌生。 那么我通过回答下面几个问题,来统一一下我们对前端数据建模概念的理解。 什么是数据建模? 数据建模是对业务逻辑所使用的数据以及这些数据之间的关系进行分析和定义的过程。 数据建模有何意义? 为团队成员之间的协作创建一种统一的模式。 通过定义数据需求和使用情况来发现改进业务流程的机会。 节省代码维护成本。 减少错误,改进数据完整性。 前端有必要进行数据建模吗? 在我
2022-05-03 01:44:55
847
1
原创 学废了,JavaScript 中的作用域与作用域链
什么是作用域? 作用域定义了变量的可见性或可访问性。大白话来说,就是一个变量能不能被访问或引用,是由它的作用域决定的。 在 JavaScript 中有三种作用域。 全局作用域 函数作用域(局部作用域) 块作用域 let globalVariable = "我是全局作用域下的变量" function func() { let localVariable = "我是局部作用域下的变量" } if (true) { let blockVariable = "我是块作用域下的变量" }
2021-12-01 05:43:59
105
原创 前端工程化:有效地进行拼写检查
拼写错误导致的问题 在项目开发过程中,即使我们再细心,也难免忙中出错,犯下很多低级的错误。 比如这样: 我们错把 field 拼写成 filed,这样打印出来的是 undefined,而不是预期的 name。 ESLint 的基本介绍 但是幸运的是,有一些 Lint 工具会在这方面提供一些帮助。 比如在 TypeScript 中,会有一个错误提示。虽然这个提示提供的消息并不是我们需要的。 当然我们可以选择一些更专业的 Linter 来完成这项工作。 目前来说,最流行的 JavaScr
2021-11-24 14:21:27
772
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人