自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

小帅的编程笔记

搜索【小帅的编程笔记】每天更新

  • 博客(118)
  • 收藏
  • 关注

原创 Node.js 13岁了,回顾Node历史

至今2022年,Node.js已经13岁了。相比之下,JavaScript已有26年历史,Web拥有33年历史。13年在技术领域来说并不算很长时间,一个新事物的诞生总是有着原因。历史几乎每本技术书籍中都会多多少少的介绍JavaScript的历史。JavaScript是一个编程语言,由Netscape公司创建,作为脚本工具用于在Netscape Navigator浏览器中操作网页。Netscape公司的一部分商业模式是销售Web服务器,其中包括一个叫Netscape LiveWire的环境,这个环

2022-02-24 22:09:48 1036

原创 18个我推荐的Node.js Web框架和工具

Node.js是一个底层平台。为了方便开发者的工作变得简单高效,社区诞生了超过上千个库。随着时间的推移,有很多优秀的库可以供大家选择,下面是不完全选择列表:Express: 提供非常简单的方式来创建Web服务器,且功能足够强大并且足够的轻量,专注于服务器的核心功能。// server.jsconst express = require('express')const app = express()const port = 3000app.get('/', (req, res) =>

2022-02-23 21:35:37 922

原创 Node.js 新手入门

Node.js 简介Node.js是一个开源并且跨平台的JavaScript运行环境。现在几乎所有的前端项目都用到了它,比如你项目中的webpack,各种CLI工具(Vue-CLI、create-react-app)都是基于Node.js开发的。Node.js运行在Google的V8 JavaScript引擎之上,V8引擎是独立于浏览器。你只需知道V8引擎的性能是非常高效的。一个Node.js应用运行在单一进程中,它不会为每个请求都新开一个线程,这点是和Java和PHP等语言的本质区别。Node.js

2022-02-22 17:54:09 967

原创 通过Chrome devtool和面试题,深入理解JavaScript闭包(下)

在前面的文章中,我们分别介绍了什么是JavaScript作用域、作用域链?ES6的块级作用域和暂时性死区是什么?什么是JavaScript执行上下文和调用栈初识JavaScript闭包,搞定面试(上)今天我们将通过Chrome devtool的Performance和Memory来排查程序中的内存泄漏情况。然后我们将通过4道经典的闭包面试题来深入巩固闭包的知识。使用Chrome devtool来排查内存泄漏情况var array = []function createNodes() {

2022-02-21 17:11:23 604

原创 初识JavaScript闭包-通过面试(上)

在前面的文章中,我们分别介绍了什么是JavaScript作用域、作用域链?ES6的块级作用域和暂时性死区是什么?什么是JavaScript执行上下文和调用栈它们也都是了解闭包知识的前置概念,在我们平常的面试中,也经常会考察闭包的相关的知识,以此来考察面试者对JavaScript的掌握程度。今天让我们来深入理解闭包。闭包闭包没有官方固定的概念,简单来说闭包是,函数嵌套函数时,内层函数引用外层函数作用域下的变量,并且内层函数在全局环境下可访问,这就是闭包。下面我们来看一个简单的闭

2022-02-18 19:49:45 1029

原创 什么是JavaScript执行上下文和调用栈

什么是JavaScript执行上下文和调用栈作为一名JavaScript开发者,我们有必要比了解JavaScript语言的内部执行机制,执行上下文和调用栈是JavaScript中的关键概念之一,理解了执行上下文和调用栈更加有助于让我们了解JavaScript中的变量提升、作用域、闭包等其他概念。前面的两篇关于作用域的文章:函数作用域和全局作用域什么是JavaScript作用域、作用域链?块级作用域和暂时性死区ES6的块级作用域和暂时性死区是什么?执行上下文和调用栈不要被高大上的名词所吓倒,其

2022-02-17 21:09:01 776

原创 ES6的块级作用域和暂时性死区是什么?

在上篇文章中我们了解了函数作用域和全局作用域,今天我们将介绍块级作用域和暂时性死区。作用域简单来说,作用域就是用来规定变量的作用范围的,在任何语言当中都会有作用域的概念,在ES6以前,JavaScript只有函数作用域和全局作用域,ES6之后又增加块级作用域。函数作用域和全局作用域什么是JavaScript作用域、作用域链?块级作用域和暂时性死区在ES6中带来了const和let变量声明的新关键字和块级作用域,在其他语言中普遍都存在的概念,在这之前JavaScript并没有块级作用域的概念,随着

2022-02-16 21:13:39 887

原创 什么是JavaScript作用域、作用域链?

JavaScript作用域、作用域链也是面试中出镜率很高的问题之一,同时也是JavaScript中最重要的基础概念之一。今天我们将通过最简单实际的代码来展示函数作用域和全局作用域,在下篇文章中,我们将介绍块级作用域和暂时性死区。作用域基本知识简单来说,作用域就是用来规定变量的作用范围的,在任何语言当中都会有作用域的概念,在ES6以前,JavaScript只有函数作用域和全局作用域,ES6之后又增加块级作用域。函数作用域和全局作用域函数作用域非常简单,比如,执行下面的foo函数,变量a在函数foo的

2022-02-15 21:53:09 394

原创 10 个 Node.js 实践:来自 Node 专家的启示

10 个 Node.js 最佳实践:来自 Node 专家的启示,由客座作者 Azat Mardan 撰写。 SitePoint 特邀嘉宾文章旨在为您带来来自网络社区的著名作家和演讲者的高质量优质内容。在我之前的文章 10 Tips to Become a Better Node Developer in 2017 中,我介绍了 10 条 Node.js 建议、技巧和技术,您可以将它们应用到您的代码中。这篇文章继续介绍 10 个最佳实践,以帮助您将 Node 技能提升到一个新的水平。这就是我们将要介绍的内容

2022-02-14 21:31:40 396

原创 详解JavaScript中this指向的优先级(三)

上篇文章中:bind\call\apply、构造函数、箭头函数中的this指向(二),我们通过call、apply、bind方式对this指向进行绑定称为显式绑定,而根据调用关系确定this的指向称为隐式绑定。那么显式绑定和隐式绑定的优先级谁更高呢?让我们看看今天的实例this优先级示例1function foo(a) { console.log(this.a)}const obj1 = { a: 1, foo: foo}const obj2 = { a: 2, fo

2022-02-12 22:14:44 701

原创 bind\call\apply、构造函数、箭头函数中的this指向(二)

在上一篇文章中搞明白this指向,走遍天下都不怕(一)我们讲了全局环境中的this和对象调用中的this。今天我们接着来看剩下其他的bind\call\apply、构造函数、箭头函数中的this指向问题。bind\call\apply改变this指向一般面试都会很喜欢问bind\call\apply的区别,这个问题也比较基础,总结来说就是它们都是用来改变函数this指向的,call和apply是直接进行函数调用;bind不会立即执行函数,而是返回一个新的函数,这个新函数已经自动绑定了新的this指向。

2022-02-11 21:47:18 452

原创 搞明白this指向,走遍天下都不怕(一)

JavaScript中的this一直是面试中的热点问题,同时也是JavaScript中的一个难点问题,在JavaScript中this的指向十分灵活,使用场景也很多,所以对于this的熟练掌握是我们前端工程师的一个基本技能之一。今天我们来通过7个实例来讲解this在一些场景中的指向问题,大家也可以先看代码,自己先思考答案,再看自己的答案是否是正确的。有一种民间流传的说法:“谁调用它,this就指向谁”,这句话其实并不全面,我们还要根据实际情况进行逐个分析。我想一篇文章里放太多的题目实例也不好,像做考试题

2022-02-10 21:54:46 2197 3

原创 看冬奥和阿里D2引发对前端未来的思考

做前端的时间久了,就经常会思考自己的价值究竟在哪里,那随着工作的时间越长,自己的见识也在不断的增长,能够看到更多以前没有见过的东西,那我就会思考自己的未来在哪里?前端的未来在哪里?最近看冬奥会的一些思考最近几天在看冬奥会,看到这些运动员们的在赛场上的精彩表现,但背后无数次的摔倒,爬起又有谁能知道,恐怕也只有自己才能知道,这些我们是无法体会的。同时也有一位明星级运动员——“谷爱凌”出现在我们的视线,这些天各种媒体都在铺天盖地的进行报道,各种商业代言也是接连不断。根据媒体的报道的来看,她确实是十分优秀,我

2022-02-08 22:18:11 446

原创 Vue3源码学习笔记——从启动项目到一步步断点调试

Vue3自alpha第一个版本发布到现在已经有两年多了,从一年前项目也都陆续使用Vue3作为主要框架。现在网上Vue3源码分析的文章也不少,但别人的文章写的再好,也要自己动手去实践,去尝试修改代码,查看效果,这是最好的学习方式。今天分享一个我阅读Vue3源码的方式1、拉源码到本地之前的Vue3代码在:https://github.com/vuejs/vue-next现在已经修改为:https://github.com/vuejs/coregit clone https://github.com/v

2022-02-05 21:11:34 1631 2

原创 浅谈App Hybrid混合开发的五种方案

在移动互联网时代来临之后,以微信、淘宝为代表的app迅速占据了我们的手机,诺基亚的迅速灭亡,苹果手机异军突起,以iOS、安卓的客户端开发需求迅速增大,导致iOS、安卓的工程师们成了香饽饽,工资高,工作好找。在之间还经历过一段windows phone,后来随着诺基亚的灭亡,也就死透了。现在只剩下安卓和iOS两大阵营了,同样由于是两个不同的系统,同样的一个应用需要开发两遍,抛开人力成本的成倍增加,由于是不同团队所开发,所以在细节的实现上,和应用的一致性都会产生问题。所以急需一种只需开发一次,能够运行两端的

2022-02-04 19:44:46 4653

原创 我经历的前端发展史

1、table表格时代最早在学校学web开发的时候,记得有html+css,js,ps,网页设计,php,mysql等课程,第一年的时候学table表格制作网页,第二年的时候学习css+div制作网页和js,当时有很多同学都逃课,有的课程老师后来都不讲了,让大家在电脑教室自习,选择一个好的学校是多么重要,整个教室只有我在自己学习,到了期末考试的时候,大部分同学也是抄我的答案和毕业设计。2、套页面时代那个时候的前端还停留在套页面的时代,有的前端也叫美工,那个时候我们还在用dreamvewer开发页面,当

2022-02-03 22:03:05 830

原创 我最喜欢高效学习前端的两种方式

先说结论:看经典书看官方文档为什么是经典书籍我买过很多本计算机、前端、JavaScript方面的书,在这方面也踩过一些坑,分享下我的经验。在最早我也买过亚马逊的kindle,kindle的使用体验还不错,能达到和纸书差不多的阅读体验,而且很便携,但由于上面想看的书很多都没有,又懒得去折腾,所以后来就卖了。之后就转到了纸书上,京东经常搞100减50的活动,买了很多的书,这些书有的只翻了几页,有的翻来覆去看了几遍。翻了几页的也有两种情况,一种是内容质量太差,完全照抄文档,而且还是过时的文档,你

2022-02-02 21:22:11 389

原创 通过文章学习前端的一些经验

昨天写了一篇关于视频学习前端的文章,总结了一些视频学习前端的一些优势和容易出现的问题。今天顺着这个思路下去,继续聊聊其他的学习方式。通过文章学习前端自从互联网诞生之初,文章这种形式就很受欢迎了,比如web的诞生就是为了更方便的在互联网上去进行分享文档。那网上关于前端的学习文章更是数不胜数了。文章学习的特点——高效通过文章去学习的好处在于我们可以比视频会更加的高效,不再去受到视频进度条的影响,我们看文章的速度也取决于我们阅读的速度。其次由于阅读的速度是很快的,所以也更加的容易去分辨出文章内容质量的

2022-02-01 21:58:03 387

原创 视频学习前端的经验之谈

在当今短视频横行的年代,学习这件事可能变得越来越碎片化,一个15秒或者30秒的视频真的能让我们学到东西吗,还是仅仅满足了“我们我们一定学习,不学习就赶不上时代了”这种每天都会产生的这种焦虑状态。那除了短视频外就是掘金或者公众号的文章或者知乎的回答等,这些文章也都会有一个主题,他们可能很长“万字长文 xxxx ”,或者只是解决了一个技术问题。所以今天想总结一下我所经历过的通过视频学习前端的经历,那废话不多说让我们现在开始吧视频教程的经历在我最初接触到电脑的时候,就已经有人制作各种各样的视频教程,比如教

2022-01-31 19:19:28 1048

原创 Vuex 4源码学习笔记 - 学习Vuex的TS .d.ts类型描述(十三)

在上一篇笔记中:Vuex 4源码学习笔记 - 通过Vuex源码学习TypeScript类型测试(十二)我们看到了Vuex的类型声明文件,我们知道Vuex的源码是使用JavaScript来开发的,JS并没有类型的声明,那么Vuex要实现TypeScript的类型就只能通过TypeScript的.d.ts来去描述类型。那么今天我们来看看Vuex是如何通过.d.ts去描述Vuex的类型。我们会结合它的源码来看首先来看到的就是createStore使用方法,它接受下面的一些参数import { create

2021-12-03 18:00:23 971

原创 Vuex 4源码学习笔记 - 通过Vuex源码学习TypeScript类型测试(十二)

在上一篇笔记中:Vuex 4源码学习笔记 - 通过Vuex源码学习E2E测试(十一)我们通过jest和puppeteer来实现了Vuex的e2e测试。那么今天我们来继续看另外的TypeScript测试,那么TypeScript测试是什么呢?首先Vuex的源码是使用JavaScript来开发的,并没有类型的声明,那么Vuex要实现TypeScript的类型就只能通过TypeScript的.d.ts来去描述类型。我们可以看到在types文件夹下有几个.d.ts的文件,他们都是用来描述TS类型的文件。

2021-11-30 22:51:22 845

原创 Vuex 4源码学习笔记 - 通过Vuex源码学习E2E测试(十一)

在上一篇笔记中:Vuex 4源码学习笔记 - 做好changelog更新日志很重要(十)我们学到了通过conventional-changelog来生成项目的Changelog更新日志,通过更新日志我们可以更好记录版本的更新信息,以及每一个更新所对应的代码有哪些变更。这样项目的可维护性会变得更好。今天我们要看的是E2E测试,也是Vuex源码中所集成的,和单元测试有所区别,单元测试主要测试每个函数,一个小的单元。而E2E测试主要是测试整个端到端,也就是实际的前端展示是否是正确的,符合预期。我们通过Vue

2021-11-29 21:55:26 516

原创 Vuex 4源码学习笔记 - 做好changelog更新日志很重要(十)

在上一篇笔记中:Vuex是如何发布的(九)我们看到了Vuex是通过npm run release命令来运行release.js这个发布脚本来进行发布,在其中有一个步骤是通过yarn changelog命令来生成CHANGELOG.md文件,也就是每个版本都有哪些东西进行了变更。那么它是怎么做到的呢?老规矩,还是从package.json看起,我们可以找到一个changelog的命令"scripts": { //... "changelog": "conventional-changelog

2021-11-28 22:48:04 807

原创 Vuex 4源码学习笔记 - Vuex是如何发布的(九)

在上一篇笔记中:Vuex 4源码学习笔记 - 通过build我们能学习到什么(八)我们通过Vuex项目的npm run build命令,来一步步的找到Vuex是如何构建的,最后可以看到,Vuex通过Rollup打包工具将代码主要打包了6个版本:dist/vuex.esm-browser.js:用于通过原生 ES 模块导入使用 (在浏览器中通过 <script type="module"> 来使用)。开发版本。dist/vuex.esm-browser.prod.js:同上,作为生产

2021-11-27 22:01:43 672

原创 Vuex 4源码学习笔记 - 通过build我们能学习到什么(八)

在上一篇笔记中:Vuex 4源码学习笔记 - 通过单元测试来看工具函数(七)我们通过单元测试学习了Vuex所用到的工具函数。今天我们通过Vuex的npm run build,看看能学习到什么首先我们通过package.json中的scripts可以看到,实际是使用node运行了scripts/build.js文件"scripts": { //... "build": "node scripts/build.js", //...}打开scripts/build.js文件// fs-

2021-11-26 23:00:44 462

原创 Vuex 4源码学习笔记 - 通过单元测试来看工具函数(七)

在上一篇笔记中:Vuex 4源码学习笔记 - mapState、mapGetters、mapActions、mapMutations辅助函数原理(六)我们通过mapState的源码了解了其工作原理,以及mapState等辅助函数并不能用在Vue3的Compositon API中。今天我们通过单元测试来学习Vuex的工具函数源码。首先在Vuex项目的package.json文件中,可以看到有很多的test脚本"scripts": { //... "lint": "eslint src test

2021-11-25 21:42:24 754

原创 Vuex 4源码学习笔记 - mapState、mapGetters、mapActions、mapMutations辅助函数原理(六)

在上一篇笔记中:Vuex 4源码学习笔记 - 通过dispatch一步步来掌握Vuex整个数据流(五)我们通过dispatch的调用,一步步的看到Vuex的内部工作流程,这也是看源码的最好的方式,只要捋清楚大概主流程后,再去看那些细枝末节就容易多了。今天我们就来看看这几个Vuex的辅助函数,分别为mapState、mapGetters、mapActions、mapMutations、createNamespacedHelpers,从名字看到,它们是辅助函数,意思就是,不用它们我们也可以使用Vuex,使用

2021-11-24 21:49:15 1349

原创 Vuex 4源码学习笔记 - 通过dispatch一步步来掌握Vuex整个数据流(五)

在上一篇笔记中:Vuex 4源码学习笔记 - Store 构造函数都干了什么(四)我们通过查看Store 构造函数的源代码可以看到主要做了三件事情:初始化一些内部变量以外执行installModule来初始化module以及子module,执行resetStoreState函数通过Vue3的reactive使store的状态实现“响应式”)。今天我们我们通过官方的购物车示例来查看Vuex内部的工作流程,示例代码在examples/composition/shopping-cart文件夹内Vu

2021-11-23 23:14:21 1148

原创 Vuex 4源码学习笔记 - Store 构造函数都干了什么(四)

在上一篇笔记中:Vuex 4源码学习笔记 - Vuex是怎么与Vue结合?(三)我们复习了Vuex的使用方式,以及为什么要使用Vuex,同时看到了Vuex是如何与Vue去结合到一起的。Vuex是通过Vue插件的方式,通过use函数将Vuex实例对象绑定到Vue中。然后我们在页面或者组件中可以通过useStore函数或者this.$store两种方式在页面中访问到store实例。首先创建Vuex实例的方式为调用createStore函数来调用import { createStore } from '

2021-11-22 21:55:01 929

原创 Vuex 4源码学习笔记 - Vuex是怎么与Vue结合?(三)

在上一篇笔记中:Vuex源码学习笔记 - Vuex开发运行流程(二)我们通过运行npm run dev命令来启动webpack,来开发Vuex,并在Vuex的createStore函数中添加了第一个断点。那么在看源码之前,建议先要熟悉Vuex的使用,如果还不熟练使用,那么在看的时候很容易会发蒙。我们来复习下Vuex中的几个重要概念和使用State - 存储状态Getter - 类似计算属性Mutation - 更改状态的唯一方法是提交 mutation。Action - 可以包含任意异步操作

2021-11-21 21:55:35 907 1

原创 Vuex源码学习笔记 - Vuex开发运行流程(二)

在上一篇笔记中:Vuex源码学习笔记(一)我们从Github上找到了Vuex的源码,并clone了到本地,接着大致了解了每个文件夹的所存放的代码的作用,Vuex项目的架构也十分的整洁清晰,一目了然。最后我们使用npm run dev命令运行起了Vuex的项目。今天我们将从npm run dev命令开始,来探究Vuex的开发的流程注意:我们需要切换到4.0分支,本期主要分析Vuex4源码,也就是Vue3配套使用的Vuex。首先我们可以从package.json文件看到:"scripts": {

2021-11-20 22:31:06 947

原创 Vuex源码学习笔记(一)

本系列目前打算出20~40期,详细讲解Vuex项目所有的方方面面,对于初学者很友好,如有建议请提出。在学习源码之前,要问清楚自己为什么要学习Vuex源码?千万不要盲目的去为了学源码而学源码。那么对于我来说学习Vuex源码可以给我带来以下的收获:可以学习到开源项目的架构方式提升自己JS的编程水平使用Vuex更加的知其然知其所以然,得心应手增加面试的谈资等等等等开始学习首先我们要去Github仓库找到Vuex的Git仓库:https://github.com/vuejs/vuex目前来说V

2021-11-19 23:54:08 691

原创 如何编写Vue插件

什么是插件在Vue框架中,如果需要给Vue增加一些我们需要的功能,Vue给我留了一个插件的方式,我们可以编写自己的插件,然后在Vue中去注册插件,然后去使用他。通过Vue插件我们可以实现一些Vue框架没有的功能,也可以使用别人写好的插件,来帮助我们更快速的实现一些功能。插件的功能范围并没有严格的要求,根据官方的示例来说,一般有下面几种:添加全局方法或者属性,如:vue-custom-element,我们可以用插件方式添加一些全局组件,然后可以在任何页面或者组件当中去使用它。这也是Element U

2021-11-18 23:45:50 1778

原创 ES6模块和commonjs模块有什么不同

历史JavaScript生态现在有两种模块化方案,一种是ES6模块,简称ESM;另一种是CommonJS模块,简称CJS。平时也会看到很多说ESM怎么样,巴拉巴拉的,说的就是ES6模块。CommonJS早期就是为Node.js而产生的,因为有Node.js时,ES6还没有呢。CommonJS模块系统与ES6模块系统并不兼容。CommonJS主要使用require()和module.exports来引入和导出各种值。ES6主要使用import和export来引入和导出各种值。它们采用不同的加载方案。

2021-11-17 23:57:24 685

原创 Vue2 vs Vue3

今天我们来看看Vue3有哪些新特性,与Vue2相比有哪些不兼容,以及现在Vue3配套的开发工具。快速体验Vue3如果你没有使用过Vue3,那么可以通过下面的几种方式,来快速的体验Vue3:通过 CDN:<script src="https://unpkg.com/vue@next"></script>Codepen 上的浏览器试验田CodeSandbox 上的浏览器内沙盒通过脚手架 Vite:npm init vite hello-vue3 -- --t

2021-11-16 23:48:30 307

原创 redux 这么难吗

我是一个多年的Vue的使用者,我经常使用Vue + Vue-Router + Vuex来开发单页面应用,那么当切换到React框架时,这一切都变得不一样了,首先Vue和React之间的区别不是很大,都是用来实现UI的库,Router的区别有一些,到状态管理这边,React有Redux、Mobx等多种解决方案,相比Vue的Vuex来说着实是复杂些,Vuex更加简单容易理解。今天我们就通过简单易懂大白话的方式来理解Redux究竟是做什么的?为什么要有Redux首先React和Vue一样,都是对DOM的一层

2021-11-15 23:06:34 1160

原创 Vue必问的三道面试题,检验Vue掌握程度

问题1: v-show 与 v-if 有什么区别?此题属于考察面试者的Vue基础情况,一般只要用过Vue肯定会用到v-show 与 v-if。v-if 指令用于条件性地渲染一块内容,而v-show也用于条件性展示元素。使用v-show的元素会被渲染并保留在 DOM 中,并使用CSS的display来控制元素的显示和隐藏。v-show 不支持 <template> 元素,也不支持 v-else。使用v-if 是“真正”的条件渲染,元素的事件监听器和子组件都会被销毁和重建。v-if 也是惰性

2021-11-14 22:33:46 1384

原创 HTML属性crossorigin和integrity有什么用

在做前端开发的时候,经常会需要通过CDN的方式引入一些第三方库,比如React、Bootstrap等,可以看到官方给到的CDN引用示例中都会有crossorigin和integrity属性,那具体有什么用呢比如React库:<script crossorigin src="https://unpkg.com/react@17/umd/react.production.min.js"></script><script crossorigin src="https://unp

2021-11-13 22:28:29 1816 1

原创 搞明白Vue什时候该用computed和watch

Vue框架中的两大重要特性computed和watch,它们之前有相似的地方,那么今天我们来说说为什么要有computed和watch?以及它们的使用场景?什么时候用computed?什么时候用watch?它们之间有什么差别呢?请看今天的文章为什么有计算属性computed在Vue中,我们可以轻松的实现数据到DOM映射,使用模板内的表达式也很方便,但如果在模板内写入太多的逻辑的话就会让模板难以维护。<template> <div :title="msg"> {{ m

2021-11-12 23:26:10 4042 2

原创 [一文学会] 正确的使用JavaScript数组迭代方法

看到很多初级前端开发人员在需要处理数组时经常会使用 forEach。今天让我们来根据使用场景来正确的使用数组方法,避免一股脑的全部使用forEach。forEach什么时候用呢?正如之前所说,我们不需要过度去滥用 forEach。 但在某些情况下 forEach 是一个非常好的方法。如果需要迭代数组来执行特定操作(例如console.log每个元素)。我们 不应该使用forEach 用来给一个变量赋值,因为它并不会返回任何的值。????const items = [1, 2, 3, 4, 5

2021-11-11 22:31:34 966

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除