自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(140)
  • 收藏
  • 关注

原创 【八股系列】CSS伪类和伪元素区别?

CSS伪类和伪元素区别?

2024-05-23 14:54:03 58

原创 【八股系列】谈一谈对重绘和回流的理解?

谈一谈对重绘和回流的理解?

2024-05-23 09:35:14 168

原创 【八股系列】说一说XSS攻击和CSRF攻击?

说一说XSS攻击和CSRF攻击?

2024-05-23 09:11:54 529

原创 【八股系列】介绍下语义化,怎样保证代码符合语义化?说说HTML5语义化标签?

介绍下语义化,怎样保证代码符合语义化?说说HTML5语义化标签?

2024-05-21 10:10:20 338

原创 【八股系列】react-router里的Link标签和a标签有什么区别?

react-router里的Link标签和a标签有什么区别?

2024-05-21 09:40:27 301

原创 【八股系列】介绍JavaScript全部数据类型,基本数据类型和引用数据类型的区别、使用场景?

介绍JavaScript全部数据类型,基本数据类型和引用数据类型的区别、使用场景?

2024-05-15 15:32:54 1002

原创 【八股系列】深入理解浏览器缓存机制,强缓存/协商缓存?

深入理解浏览器缓存机制,强缓存/协商缓存?

2024-05-15 11:43:28 688

原创 【八股系列】vue中计算属性computed和普通属性method的区别是什么?

vue中计算属性computed和普通属性method的区别是什么?

2024-05-14 17:53:40 286

原创 【八股系列】在css中link和@import的区别是什么?

在css中link和@import的区别是什么?

2024-05-11 10:23:50 298

原创 【八股系列】防抖节流函数原理、区别以及应用?

防抖节流函数原理、区别以及应用?

2024-05-11 09:53:14 340

原创 【八股系列】vue-router的原理是什么?

vue-router的原理是什么?

2024-05-11 09:14:50 201

原创 【八股系列】Cookie、sessionStorage、localStorage的区别?

Cookie、sessionStorage、localStorage的区别?

2024-05-11 08:40:58 167

原创 【八股系列】React中props和state的区别是什么?

React中props和state的区别是什么?

2024-05-10 10:06:55 250

原创 【八股系列】Loader和Plugin的区别是什么?

Loader和Plugin的区别是什么?

2024-05-10 09:42:05 330 1

原创 【八股系列】vue的双向绑定原理是什么?

vue的双向绑定原理是什么?

2024-05-09 17:41:29 1624

原创 JavaScript垃圾回收

垃圾回收是一种自动内存管理的形式,它负责寻找不再使用的对象,并释放其占用的内存。在JavaScript中,由于开发者无需直接管理内存(如分配和释放),因此垃圾回收机制就显得尤为重要。

2024-04-07 10:02:59 428

原创 JavaScript异步编程规范->实现一个简易版本的 Promise

文章目录1.Promise基本使用2.实现一个Promise2.1.resolve/reject2.1.1.初始化状态及返回值2.1.2.实现resolve/reject2.1.3.状态不可逆2.1.4.处理throw2.2.then2.2.1.实现then2.2.2.通过队列实现setTimeout2.2.3.链式调用2.2.4.执行顺序2.3.其他方法2.3.1.all2.3.2.race2.3.3.allsetled2.3.4.any3.最终代码1.Promise基本使用Promise 是一个

2024-04-01 06:30:00 1633

原创 JavaScript中call、apply、bind详解及手写实现

首先,我们都知道JavaScript中的this指向分为软绑定及硬绑定。并且this的指向与执行上下文有关系。在全局执行上下文中,this指向 全局对象(),在对象调用其内部方法时,this指向调用的地方,这就称为。那么如何使用呢?这就需要使用JavaScript中内置的方法来实现了。

2024-03-31 15:50:35 701

原创 JavaScript中this指向

在 JavaScript 中,this 的指向是一个相对复杂且容易混淆的概念。它的指向取决于函数调用的方式和上下文。以下是一些常见的情境,以及在这些情境中 **this** 的指向

2024-03-31 06:30:00 554

原创 JavaScript继承的多种方式及优缺点

【代码】JavaScript继承的多种方式及优缺点。

2024-03-31 06:30:00 347

原创 HarmonyOS学习第二章:初识ArkTs/ArkUI,常用组件

ArkTS是HarmonyOS的应用开发语言,它在保持TypeScript(简称TS)基本语法风格的基础上,对TS的动态类型特性施加了更严格的约束,并引入了静态类型。首先在入口文件同级下新建一个组件文件选择新建ArkTS File自定义文件名称编写代码预览双击进入到MyComponentPage.ets文件下,点击右侧预览窗口的刷新效果已经有了ArkUI是一套构建分布式应用界面的声明式UI开发框架。它使用极简的UI信息语法、丰富的UI组件、以及实时界面预览工具。

2024-02-03 22:33:36 1884

原创 HarmonyOS学习第一章:安装DevEcoStudio

记录学习鸿蒙之-编辑器的安装

2024-02-01 00:50:13 1280

原创 el-progress进度条增加动画效果

【代码】el-progress进度条增加动画效果。

2023-10-24 11:24:29 946

原创 运行vite项目报错:await import(‘source-map-support‘).then((r) => r.default.install())

项目实现屏幕截图功能。

2023-10-07 14:24:58 2854 1

转载 npm报错Failed at the [email protected] install script.

Electron+vue项目 npm install 报错Failed at the [email protected] install script.

2023-09-18 14:25:47 819

原创 定时任务中的 Corn 表达式详解(超详细)

Corn表达式是一种用于定时执行任务的格式化字符串。它由6个字段组成分为7个域,分别表示秒、分、时、日、月、周、年。[ 秒 ] [ 分 ] [ 时 ] [ 日 ] [ 月 ] [ 周 ] [ 年 ]其中,月和周不能同时指定,否则会产生歧义。通常年可以被省略。Corn表达式是一种非常灵活和强大的定时任务调度工具。通过掌握Corn表达式的语法和特殊字符,可以轻松实现各种复杂的任务调度需求。

2023-07-28 10:52:52 9242

原创 前端工程化第三章:webpack5基础(下)

本文主要讲解了webpack5中ts支持、eslint代码检查配置、图片优化等内容。

2023-07-23 18:27:42 768 2

原创 前端工程化第二章:webpack5基础(中)

本文讲解了 webpack 中 css 文件拆分、less/sass的处理、postcss以及babel的使用

2023-07-19 17:31:08 256

原创 前端工程化第一章:webpack5基础(上)

Webpack是一个现代JavaScript应用程序的静态模块打包器。它是一个用于将代码编译成浏览器可识别的格式的工具。webpack代码转换TypeScript编译成JavaScriptSCSSless编译成CSS等。文件优化:压缩JavaScriptCSSHTML代码,压缩合并图片等。代码分割提取多个页面的公共代码、提取首屏不需要执行部分的代码让其异步加载。模块合并:在采用模块化的项目里会有很多个模块和文件,需要构建功能把模块分类合并成一个文件。自动刷新:监听本地源代码的变化,自动重新构建。

2023-07-18 18:54:50 1407

原创 JavaScript异步编程:(回调函数、Promise、async/await、Generator)

JavaScript中异步编程的目的是允许代码执行非阻塞操作。这很重要,因为JavaScript是一种单线程语言,意味着一次只能执行一个任务。异步编程允许同时执行多个任务,提高性能和响应能力。JavaScript中有几种异步编程技术,包括回调函数Promise和生成器。

2023-07-09 17:18:19 877

原创 数组扁平化flat方法的多种实现

数组扁平化是指将一个多维数组变成一维数组的过程。在 JavaScript 中,可以使用 flat() 方法来实现数组扁平化,该方法可以将一个多维数组变成一个一维数组。flat() 方法有一个可选参数,表示需要扁平化的层数。除了 flat() 方法外,还可以使用其他方法来实现数组扁平化。下面是几种常见的实现方式。

2023-07-09 14:29:33 475

原创 git tag详解

通常我们在生产环境发版时,创建一个tag,这样一个不可修改的版本将被冻结起来,这对于发布或者版本管理非常有益。在Git中,tag是标记存储库历史记录中特定提交的一种方式。tag通常用于标记项目的特定版本,例如版本1.0或2.0。

2023-07-06 17:56:16 15458

原创 编译原理四:正则分词

在编译原理中,正则分词是一种常用的词法分析方法,它通过正则表达式来定义词法单元(Token)的模式,并将源代码中的字符序列转换为词法单元序列。在正则分词中,我们需要定义一个包含各种词法单元模式的正则表达式,然后将源代码中的字符序列与正则表达式进行匹配。如果匹配成功,则将匹配的字符序列转换为对应的词法单元。

2023-07-05 15:30:35 175

原创 编译原理五:语法分析

上下文无关文法(Context-Free Grammar,CFG)是一种形式语言,它可以用于描述一类特定的语言结构。CFG 的一个典型应用是在编译器中,用于描述编程语言的语法规则。在 CFG 中,一个非终结符号可以被表示为一组产生式,每个产生式由一个非终结符号和若干个终结符号组成。终结符号非终结符号产生式和开始符号。终结符号是 CFG 中的最基本元素,它表示语言中的一个基本单元,如数字、标识符、运算符等。非终结符号表示语言中的一个复合单元,它可以由一个或多个终结符号或其他非终结符号组成。

2023-07-04 15:06:35 3136

原创 git merge 和git rebase的区别

git merge保留了分支的历史记录,但可能会导致仓库的历史记录变得混乱。而git rebase创建了干净的历史记录,但会删除分支的历史记录。因此,在选择使用哪种方法时,需要根据具体情况进行考虑。

2023-07-04 09:58:26 398

原创 编译原理三:词法分析

在编译器工作流程中,词法分析是将分解为一系列的过程。词法单元包括等。词法分析器会预定义的。词法分析器通常使用来实现。有限状态机是一种计算模型,它可以接受一串输入并根据一组状态转移规则进行状态转移,最终输出一个结果。在词法分析器中,有限状态机通常用于匹配输入的字符串。词法分析器可以,并且不需要回溯的操作,因此能够地编译器的词法分析。词法分析器通常是,它会将源代码分解为一系列,然后将这些词法单元传递给语法分析器进行语法分析。词法分析器的设计和实现对编译器的性能和正确性都有重要的影响。

2023-06-29 17:34:14 417

原创 编译原理二:有限状态机

在编译原理中,有限状态机通常用于词法分析阶段。词法分析器将源代码作为输入,通过有限状态机匹配出其中的词法单元。

2023-06-26 16:38:58 1015

原创 编译原理一:编译器工作流

编译器是将一种语言转化为另一种语言的程序。

2023-06-25 23:24:07 529

原创 学习Web Worker

Web Worker和Service Worker都是用于在浏览器中执行JavaScript代码的机制,它们都可以在后台线程中执行脚本,从而避免了主线程被阻塞的问题,提高了Web应用程序的性能和响应速度。Service Worker是一种用于在浏览器中执行脚本的机制,它可以在浏览器和网络之间建立一个中间层,用于处理网络请求和响应。向Worker发送消息:在Worker线程中,可以通过监听message事件来接收主线程发送的消息,然后通过调用postMessage()方法向主线程发送消息。

2023-06-20 10:51:15 701

原创 TypeScrip详解十八:ts中的类型断言

类型断言是告诉编译器一个值的类型的方法。使用类型断言时,开发人员可以指定变量或表达式的类型,从而绕过编译器检查。

2023-06-15 17:09:36 418 1

空空如也

空空如也

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

TA关注的人

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