自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

猫老板的豆

吃饭睡觉打豆豆

  • 博客(306)
  • 资源 (12)
  • 收藏
  • 关注

原创 前端知识点梳理

HTML语义化的理解meta标签和的区别link 和 @import 有什么区别defer 和 asyncHTML5离线储存CSS3 新特性CSS选择器和优先级权重CSS 中哪些属性可以继承CSS 预处理器盒子模型居中常见方法BFCflex布局grid布局em 和 rem的区别CSS中position定位三栏布局transition和animation的区别伪元素和伪类字符串 数组处理数据类型检测ES6新特性作用域闭包原型和原型链继承thisPromiseasync 和 await事件循环:宏任务、微任务深

2023-08-29 18:54:33 344

原创 整理大厂高频核心前端面试题,五万多字,面试必考

如果 Vue 组件中的 data 是个对象,那么所有复用这个组件的地方,都在使用这个组件里面唯一的一个 data,所有使用组件的地方的 data 都会指向栈内这一个 data 的地址,那么会造成。等待执行栈和微任务队列都执行完毕才会执行,并且在执行完每一个宏任务之后,会去看看微任务队列有没有新添加的任务,如果有,会先将微任务队列中的任务清空,才会继续执行下一个宏任务。异步:是指不进入主线程,而进入任务队列的任务,只有任务队列通知主线程,某个异步任务可以执行了,该任务才会进入主线程。

2021-09-13 11:07:08 2393 2

原创 ES6之新特性汇总

ES6之 let 和 const 关键字ES6之 解构赋值ES6之 扩展运算符ES6之 字符串String新特性ES6之 数值Number新特性ES6之 数组Array新特性ES6之 函数优化(默认参数、剩余参数、 箭头函数)ES6之 PromiseES6之 async/awaitES6之 Class(类)ES6之 Map、Set 和 WeakMap、WeakSetES6之 Module 语法(import 和 export)ES6之 Generator 函数ES6之高阶函数ES6之 for…of 循环

2020-05-09 21:35:30 542 1

原创 yarn详细入门教程

Yarn是 Facebook, Google, Exponent 和 Tilde 开发的一款新的 JavaScript包管理工具。安装的时候无法保证速度/一致性安全问题,因为 npm 安装时允许运行代码Yarn 同样是一个从 npm 注册源获取模块的新的 CLI 客户端。注册的方式不会有任何变化 —— 你同样可以正常获取与发布包。

2018-01-31 11:51:47 75357 5

原创 React 组件三大核心之 props

在React中,props(属性)是组件之间传递数据的一种方式。,这意味着你不能在子组件中修改它们。props可以是任何类型的数据,如字符串、数字、数组、对象或者函数。

2024-05-16 18:01:50 311

原创 React 组件三大核心之 state

在React中,state是组件中存储和管理数据的一种方式。它是一个JavaScript对象,用于存储组件的状态信息。当state发生变化时,React会重新渲染组件,从而更新用户界面。(Function Component)和。

2024-05-16 15:51:40 251

原创 uni-app 路由跳转方式

uni-app页面路由为框架统一管理,开发者需要在pages.json里配置每个路由页面的路径及页面样式。需要跳转的 tabBar 页面的路径(需在 pages.json 的 tabBar 字段定义的页面),路径后不能带参数。,path为下一个页面的路径,下一个页面的onLoad函数可得到传递的参数。需要跳转的应用内非 tabBar 的页面的路径 , 路径后可以带参数。需要跳转的应用内非 tabBar 的页面的路径 , 路径后可以带参数。,如果跳转的页面路径是 tabBar 页面则不能带参数。

2024-05-15 15:07:18 794

原创 uni-app 生命周期

uni-app 组件支持的生命周期,与vue标准组件的生命周期相同。这里没有页面级的onLoad等生命周期函数名说明平台差异在实例初始化之前被调用created在实例创建完成后被立即调用在挂载开始之前被调用mounted挂载到实例上去之后调用。详见 注意:此处并不能确定子组件被全部挂载,如果需要子组件完全挂载之后在执行操作可以使用$nextTick数据更新时调用,发生在虚拟 DOM 打补丁之前仅H5平台支持updated由于数据更改导致的虚拟 DOM 重新渲染和打补丁,在这之后会调用该钩子。

2024-05-14 20:48:01 795

原创 CDN的工作原理及流程

当用户向本地DNS服务器发起请求本地DNS服务器会将域名解析权交给CNAME指向的CDN专用的DNS服务器CDN专用的DNS服务器将CDN的全局负载均衡设备IP地址返回给用户,用户对这个全局负载均衡设备发起访问请求CDN全局负载均衡设备会选择一个最优的缓存服务器节点(边缘节点),并获得该边缘节点的IP地址。全局负载均衡设备再把该边缘节点的IP地址返回给用户。用户使用从这个IP地址发起请求,并获取到内容。

2024-05-13 16:39:09 661

原创 图片懒加载

懒加载也叫做延迟加载、按需加载,指的是在长网页中延迟加载图片数据,是一种较好的网页性能优化的方式。这样可以减少初始页面的加载时间,提高网站的响应速度,尤其对于移动设备和网络条件较差的用户,可以显著地提高用户的体验。

2024-05-10 19:10:53 693

原创 HTTP/1.0、HTTP/1.1、HTTP/2.0区别

如果前面的一个请求在服务器端处理的时间很长,生成响应需要很多时间,那么后面的请求即使已经处理完毕并生成了响应,也需要等待前面的响应发送完毕后才能发送。HTTP/1.1引入了更强大的缓存机制,允许客户端和服务器缓存请求和响应的内容。的概念,以及服务器推送等功能,进一步解决了HTTP/1.1中的队首阻塞问题,并提供了更好的性能和用户体验。HTTP/1.1是HTTP协议的一个版本,相较于HTTP/1.0,它在多个方面进行了改进和优化。服务器会根据请求的优先级来分配资源,优先处理重要的请求,从而提高了用户体验。

2024-05-10 14:29:31 922

原创 Vue Router 路由hash和history模式

在 Vue 中,路由的两种主要模式是和,默认的路由模式是hash模式。。这两种模式决定了 URL 的外观以及浏览器如何处理 URL 的变化。

2024-05-08 16:40:07 971

原创 TypeScript type类型别名

type 最简单的用法是为现有的基本类型(如 string、number、boolean 等)创建别名。2. 对象类型别名可以使用 type 来定义对象的形状,这类似于 ,但 type 允许你在单个声明中定义更复杂的类型。3. 交叉类型(Intersection Types)type 可以用来创建交叉类型,它结合了多个类型的所有成员。这类似于 的 extend4. 联合类型(Union Types)联合类型允许一个变量可以是几种类型中的任意一种。5. 映射类型(Mapped Types)映

2024-05-07 11:41:17 433

原创 垃圾回收机制

前端垃圾回收机制是JavaScript引擎自动管理内存的一种方式,主要目的是识别和释放不再使用的内存,以防止内存泄漏。JavaScript引擎通过特定的垃圾回收算法(如标记-清除、引用计数等)来判断哪些对象已经不再被引用,从而将其占用的内存释放。前端垃圾回收机制是JavaScript引擎内部实现的一部分,开发者通常无需直接操作。然而,了解垃圾回收机制的工作原理可以帮助开发者编写更高效、更安全的代码。

2024-05-06 15:10:39 709

原创 HTTP 与 HTTPS

HTTPS:是HTTP的安全版,它在HTTP的基础上加入了SSL/TLS协议,SSL/TLS依靠证书来验证服务器的身份,并为浏览器和服务器之间的通信加密。据ACM CoNEXT数据显示,使用HTTPS协议会使页面的加载时间延长近50%,增加10%到20%的耗电,此外,HTTPS协议还会影响缓存,增加数据开销和功耗,甚至已有安全措施也会受到影响也会因此而受到影响。然而,HTTP协议传输的数据都是未加密的,也就是明文的,因此使用HTTP协议传输隐私信息非常不安全,容易导致数据被窃取或篡改。

2024-04-30 17:21:01 1387

原创 浅谈 HTTPS

HTTPS (Hypertext Transfer Protocol Secure) 是一种安全的通信协议,以安全为目标的HTTP通道,简单讲是HTTP的安全版。HTTPS 通过在 HTTP 协议的基础上添加 SSL/TLS 来提供加密通信和身份验证,HTTPS的安全基础是 SSL/TLS。这意味着,当使用 HTTPS 访问一个网站时,与该网站之间的所有通信都是加密的,从而保护数据免受中间人攻击和其他形式的网络攻击。现在它被广泛用于万维网上安全敏感的通讯,例如交易支付方面。

2024-04-30 16:30:48 1049

原创 TCP和UDP

TCP向上层提供面向连接的可靠服务 ,UDP向上层提供无连接不可靠服务。虽然 UDP 并没有 TCP 传输来的准确,但是也能在很多实时性要求高的地方有所作为对数据准确性要求高,速度可以相对较慢的,可以选用TCP。

2024-04-29 19:03:45 539

原创 函数柯里化

柯里化(Currying)是一个在函数式编程中常见的概念,它指的是将一个接受多个参数的函数转换成一系列使用一个参数的函数。柯里化的主要优势在于它可以增加函数的复用性,并使得函数的组合更加灵活。举例来说,一个接收3个参数的普通函数,在进行柯里化后, 柯里化版本的函数接收一个参数并返回接收下一个参数的函数, 该函数返回一个接收第三个参数的函数。最后一个函数在接收第三个参数后, 将之前接收到的三个参数应用于原普通函数中,并返回最终结果。Javascript实际应用中的柯里化函数,可以传递一个或多个参数。

2024-04-26 18:36:39 484

原创 Grid 布局

Grid布局是一种用于网页布局的CSS技术,它允许开发者定义一个元素内部的行和列,并在这些网格中放置子元素。这是一个强大的布局方式,可以看作是二维布局,也是唯一的二维布局方案。

2024-04-25 20:19:13 1095

原创 HTML中meta标签属性详解

meta>标签是一种用于在 HTML 文档头部提供元数据的标签。它通常位于标签内,用于向浏览器和搜索引擎提供关于网页的信息,而不是直接展示给用户是HTML标记head区的一个关键标签,用于描述一个HTML网页文档的属性,提供有关页面的元信息。它并不会显示在页面上,但对于机器是可读的,可用于浏览器(如何显示内容或重新加载页面)、搜索引擎(SEO)或其他web服务。

2024-04-25 14:21:48 975

原创 CSS 预处理器

Sass和Less都使用符号来定义变量。Stylus则既可以使用符号,也可以使用符号来定义变量。

2024-04-17 18:27:07 1118

原创 CSS3 新特性

CSS3中引入了许多令人兴奋的新特性,这些特性使得开发者能够创建更丰富、更动态和更响应式的网页。

2024-04-17 16:38:40 1178

原创 CSS 伪元素和伪类的用法和区别

在内容元素的前后插入额外的元素或样式,但是这些元素实际上并不在文档中生成。它们只在外部显示可见,但不会在文档的源代码中找到它们,因此,称为“伪”元素。伪元素通常用双冒号来表示 (在实际使用中,一些旧的伪元素如:before和:after仍然被广泛接受)::before和::after:用于在选定元素的内容之前和之后插入内容通常与content属性一起使用,可以插入文本、图像或其他内容。它们不占用DOM节点,使得CSS能够解决一部分JavaScript的问题,同时避免增加无意义的页面元素。

2024-04-17 15:05:53 522

原创 CSS transition和animation的用法和区别

Transition和Animation在CSS中都是用于实现元素状态变化的效果,但它们在用法和特性上存在明显的区别。

2024-04-17 14:24:58 420

原创 Vue 3 性能飞跃:解析其性能提升的关键方面

Vue 3 提供了更好的 Tree Shaking 支持,可以消除代码中未使用的部分,减少了不必要的代码和模块,减少打包体积,从而降低了应用程序的加载时间和运行时的内存占用。Vue 3 引入了事件缓存机制,当事件被多次触发时,不会每次都执行事件处理函数,而是使用缓存的结果,从而减少了不必要的计算和处理时间,提高了应用程序的性能。对于多层嵌套的对象,由于proxy只能代理一层,所以vue3在真正访问到对象属性的时候,才去判断递归,而不是在初始化的时候就一股脑的递归。Proxy 是直接代理整个对象。

2024-04-16 16:43:26 845

原创 Vue router 与 route 的区别

在Vue Router中,router和route是两个不同的概念,它们各自具有不同的作用和功能。

2024-04-13 16:04:02 540 1

原创 Vue Router 路由动态缓存组件

Vue Router 允许你缓存路由组件,这样在用户导航回之前的页面时,组件的状态会被保留而不是重新渲染。这可以通过使用组件来实现。是一个内置抽象组件,它自身不会渲染一个 DOM 元素,也不会出现在父组件链中。它的主要作用是缓存不活动的组件实例,而不是销毁它们。当组件在包裹下被切换时,它的状态(包括数据、DOM 结构等)都会被保留,以便在下次重新显示时能够恢复之前的状态,而不是重新创建组件实例。根据路由的meta字段中的keepAlive属性来决定是否缓存组件。

2024-04-13 11:29:57 1404

原创 Vue Router 路由生命周期钩子/路由导航守卫

Vue Router 提供了路由钩子(Route Hooks),允许你在路由发生变化时执行一些操作。这些钩子可以在路由进入、离开等关键时刻触发,从而实现一些特定的功能,比如页面权限控制、数据预加载等。路由守卫简单来讲就是监听页面进入修改,和离开的功能。to:即将要进入的路由对象from:当前导航正要离开的路由next:一定要调用该方法来 resolve 这个钩子。执行效果依赖 next 方法的调用参数。next():进行管道中的下一个钩子。如果全部钩子执行完了,则导航的状态就是。

2024-04-12 15:41:43 1233 1

原创 Vue Router 4 与 Router 3 路由配置与区别

Composition API 的集成:Vue Router 4 提供了更好的对 Vue 3 Composition API 的支持,允许你使用。与 Vue 版本的兼容性:Vue Router 4 是专门为 Vue 3 设计的,而 Vue Router 3 与 Vue 2 兼容。TypeScript 支持:Vue Router 4 对 TypeScript 提供了更好的支持,类型定义更加完整和准确。路由守卫的改进:Vue Router 4 改进了路由守卫(导航守卫)的 API,提供了更多的灵活性和控制。

2024-04-12 15:37:38 499

原创 前端大文件分块上传、断点续传

大文件上传是一个复杂的过程,尤其是在前端,我们需要考虑用户体验、网络状况、文件完整性等多个方面。以下是一个使用HTML5的File API和进行大文件分块上传的详解和示例代码。

2024-04-11 16:25:35 391

原创 require和import的区别

require和import都是用于引入其他模块的关键字,它们的主要目的是为了实现代码的可重用性和模块化。当需要在一个文件中引用另一个文件或模块时,可以使用这两个关键字来实现这个功能。不过,它们之间存在着一些明显的区别。

2024-04-08 15:53:56 256

原创 服务端渲染SSR

服务端渲染(Server-Side Rendering,简称SSR)是一种网页渲染技术,它指的是在服务器端完成页面的HTML结构、CSS样式以及JavaScript脚本的渲染,然后将完整的页面发送给客户端(浏览器)。在客户端,浏览器直接解析并显示这个已经渲染好的页面,而不需要再执行额外的JavaScript代码来生成页面内容。

2024-04-03 12:04:13 935

原创 微信小程序支付流程

后端可以根据需要,将支付结果通知前端,前端更新界面状态。在小程序界面上,用户选择商品或服务,点击支付按钮。API 发起支付请求,传入后端返回的支付参数。用户在小程序内完成支付操作。

2024-04-03 11:41:31 473

原创 微信小程序登录流程

发送至开发者的后台服务器。这个步骤通常是通过HTTP请求完成的,可能还包含其他必要的参数,如小程序的。后端服务器保存 session_key 和 openid,并可以生成自定义的登录态。用户在小程序内部点击登录按钮或进行需要登录权限的操作,触发登录流程。后,保存到本地,以便后续的请求中携带(需要携带。当用户点击登录按钮后,小程序调用。(本次登录的会话密钥) 和。,请求微信服务器换取。

2024-04-02 16:44:40 352

原创 微信小程序中路由跳转方式

需要跳转的应用内非 tabBar 的页面的路径 (代码包路径), 路径后可以带参数。需要跳转的应用内非 tabBar 的页面的路径 (代码包路径), 路径后可以带参数。需要跳转的应用内页面路径 (代码包路径),路径后可以带参数。分隔,参数键与参数值用=相连,不同参数用&分隔;可通过 getCurrentPages 获取当前的页面栈,决定需要返回几层(页面不断出栈,直到目标返回页,新页面入栈)需要跳转的 tabBar 页面的路径 (代码包路径)(需在。的 tabBar 字段定义的页面),路径后不能带参数。

2024-04-02 15:58:32 834

原创 axios详解

Axios 是一个功能强大且易于使用的基于 Promise 的 HTTP 客户端库。可以用在浏览器和 node.js 中。这意味着它结合了 Promise 的特性和 HTTP 客户端的功能,为用户提供了一个强大且灵活的工具来发送 HTTP 请求和处理响应。

2024-03-29 17:19:15 1704 1

原创 Vue双向绑定原理

举例说明:小明最近看上了一套房子,到了售楼处之后才被告知,该楼盘的房子早已售罄。好在售楼 MM 告诉小明,不久后还有一些尾盘推出,开发商正在办理相关手续,手续办好后便可以购买。但到底是什么时候,目前还没有人能够知道。于是小明把电话号码留在了售楼处。售楼 MM 答应他,只要新楼盘一推出就马上发信息通知小明。除了小明,还有小红、小强、小龙也是一样,他们的电话号码都被记在售楼处的花名册上,新楼盘推出的时候,售楼 MM会翻开花名册,遍历上面的电话号码,依次发送一条短信来通知他们。

2023-10-17 15:55:04 190

原创 js构造函数

通过new 函数名来实例化对象的函数叫构造函数。任何的函数都可以作为构造函数存在。之所以有构造函数与普通函数之分,主要从功能上进行区别的,构造函数的主要 功能为 初始化对象,特点是和new 一起使用。new就是在创建对象,从无到有,构造函数就是在为初始化的对象添加属性和方法。构造函数定义时首字母大写(规范)。此时,p1就是一个新对象。

2023-10-16 17:44:38 262

原创 手把手教你从webpack迁移到vite,仅6步~!

当我们开始构建越来越大型的应用时,需要处理的 JavaScript 代码量也呈指数级增长。)才能启动开发服务器,即使使用模块热替换(HMR),文件修改后的效果也需要几秒钟才能在浏览器中反映出来。通常包含一些并非直接是 JavaScript 的文件,需要转换(例如 JSX,CSS 或者 Vue/Svelte 组件),时常会被编辑。Vite 旨在利用生态系统中的新进展解决上述问题:浏览器开始原生支持 ES 模块,且越来越多 JavaScript 工具使用编译型语言编写。,也需要修改一下 ,

2023-10-11 11:59:43 3096 1

原创 优化SPA首屏加载速度

首屏时间(First Contentful Paint),指的是浏览器从响应用户输入网址地址,到首屏内容渲染完成的时间,此时整个网页不一定要全部渲染完成,但需要展示当前视窗需要的内容首屏加载可以说是用户体验中最重要的环节。

2023-09-14 12:00:45 224

aes.js小程序加密解密

微信小程序加密解密aes引用文件 详细使用教程:https://xiabing.blog.csdn.net/article/details/116494937

2021-05-07

JavaScript实现图片上传并预览并提交ajax(完整demo)

接口有效,下载即用。 文档:https://xiabing.blog.csdn.net/article/details/76690927

2021-03-31

china.js省份居中

eCharts中的china.js文件。修改源文件省份经纬度,使省份名称居中显示。亲测可用,更新于2020-12-10

2020-12-10

图解HTTP(高清含目录)

图解HTTP(高清含目录) 图解HTTP(高清含目录) 图解HTTP(高清含目录)

2018-08-15

NavicatforMySQL11.1.13-企业版 包含安装文件和注册机

NavicatforMySQL11.1.13-企业版 包含安装文件和注册机

2018-08-15

AngularJS权威教程

本书是资深全栈工程师的代表性著作,由拥有丰富经验的国内AngularJS技术专家执笔翻译,通俗易懂、全面深入,是学习AngularJS不可错过的经典之作。无论是出于工作需要,还是好奇心的驱使,只要你想彻底理解AngularJS,本书都会让你感到满意。, 本书将涵盖AngularJS的如下概念。, 双向数据绑定, 依赖注入, 作用域, 控制器, 路由, 客户端模板, 服务, 通过XHR实现动态内容, 测试, 过滤器, 定制表单验证, 深度测试, 定制指令, 专业工具, 对IE的支持

2017-11-03

ECMAScript6入门

《ECMAScript6入门》全面介绍了ECMAScript6新引入的语法特性,覆盖了ECMAScript6与ECMAScript5的所有不同之处,对涉及的语法知识给予了详细介绍,并给出了大量简洁易懂的示例代码。, 《ECMAScript6入门》为中级难度,适合已有一定JavaScript语言基础的读者,用来了解这门语言的最新发展;也可当作参考手册,查寻新增的语法点。

2017-11-03

JQuery源码详细中文注释!

JQuery源码详细中文注释!JQuery源码详细中文注释!JQuery源码详细中文注释!JQuery源码详细中文注释!JQuery源码详细中文注释!

2017-11-03

CSS Sprites样式生成工具.zip

CSS Sprites样式生成工具.zip

2017-08-15

《锋利的jQuery》(高清扫描版-有书签).pdf

《锋利的jQuery》(高清扫描版-有书签).pdf

2017-08-15

空空如也

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

TA关注的人

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