自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Guacamole实现本地输入后直接将整个文本传输给服务端

Guacamole实现本地输入后直接将整个文本传输给服务端

2023-02-10 18:22:23 756 2

原创 封装 axios 拦截器实现用户无感刷新 access_token

单点登录实现用户无感刷新Token

2022-09-28 15:18:04 546

原创 mac上安装Nginx简单详细教程

mac上安装nginx的简单教程

2022-09-20 17:37:42 9849

原创 vue中安装sass的方法

vue中安装sass的方法

2022-09-15 15:24:40 845 1

原创 手写call、apply、 bind函数,以及对实现原理的理解

手写call、apply、 bind函数,以及对实现原理的理解本篇文章主要是自己手动实现call、apply、 bind函数,以及对实现原理的理解,如果不了解call、apply、 bind函数的使用以及作用的可以看一下之前的一篇文章call()、apply()、bind()的作用和区别1、手写call()函数// 首先将自己实现的call()方法挂到函数的原型下 Function.prototype.myCall = function(context, ...args) { co

2021-04-20 10:33:37 202

原创 JavaScript中事件循环的理解​

JavaScript事件循环的理解​JavaScript是单线程的,就是说在程序运行时同一时间只能做同一件事。这种设计会产生运行阻塞问题,如果说上一件事没做完,那么后面的事就都只能等着,为了解决这种问题的存在,就提出了一种运行机制-事件循环(Event Loop)事件循环(Event Loop)在JavaScript中,所有的任务都可以分为两种:同步任务:立即执行的任务,同步任务一般会直接进入到主线程中执行异步任务:异步执行的任务,比如ajax网络请求,setTimeout定时函数等

2021-04-13 11:36:41 95

原创 JavaScript变量提升和函数提升

JavaScript变量提升和函数提升一、变量提升在JS中使用var创建变量时会存在变量提升,也就是把使用var创建的变量提升到当前作用域的顶部。例如:console.log(a) //undefinedconsole.log(b) //undefinedvar a = 1var b = 2console.log(a) // 1console.log(b) // 2JS在解析这段代码时会解析为,将var创建的变量a和b提升到顶部。var avar bconsole.log

2021-04-12 23:02:23 131

原创 js字符串补齐方法padStart()和padEnd()

js字符串补齐方法padStart()和padEnd()场景:时间或者日期不足2位时在前面用0补齐。padStart()和padEnd()两个方法用法和参数都一致,唯一的区别就是 padStart()是从左边开始的位置补齐,而padEnd()是从右侧结束的位置补齐。代码示例:let text = ”oliver“console.log(text.padStart(8)) // " oliver"console.log(text.padStart(7,'a')) /

2021-04-09 14:30:29 1759

原创 CSS3盒子模型的理解

CSS3盒子模型的理解所有HTML元素可以看作盒子,在CSS中,"box model"这一术语是用来设计和布局时使用。CSS盒模型本质上是一个盒子,封装周围的HTML元素,一个盒子是由 4 部分组成的:内容(content)、内边距(padding)、边框(border)和外边距(margin)。盒子模型分为两种:标准盒子模型和IE盒子模型,由 W3C 和 IExplore 制定的标准。如果给某个元素设置样式.box { width: 200px; height: 200px;

2021-04-09 11:05:15 226

原创 替换一个字符串中的所有指定字符 replaceAll()方法的使用

ES2021新特性-替换一个字符串中的所有指定字符 replaceAll()方法的使用String.protype.replaceAll在 ES2021 之前,要替换掉一个字符串中的所有指定字符,我们可以这么做:const str = '2-4-6-8-10';const newStr = str.replace(/\-/g, '+');console.log(newStr); //2+4+6+8+10ES2021 则提出了 replaceAll 方法,并将其挂载在 String 的原型上,可

2021-02-22 17:00:24 1996

原创 Angular中ng-template、ng-container、ng-content 的用法

Angular中ng-template、ng-container、ng-content 的用法1.ng-container此标签不渲染成DOM;默认显示标签内部内容,也可以使用结构型指令(ngIf、ngFor…)

2021-02-20 17:40:34 498

原创 前端宏任务和微任务的理解

前端宏任务和微任务的理解JavaScript中分为同步任务和异步任务,而异步任务中又分为宏任务和微任务两种;代码示例: function app() { setTimeout(() => { console.log("1-1"); Promise.resolve().then(() => { console.log("2-1"); }); }); console.log("1-2"

2021-02-06 15:39:48 948

原创 多维数组降维 flat()方法的作用和用法

多维数组降维 flat()方法的作用和用法一、作用flat()方法用于将嵌套的数组“拉平”,变成一维的数组。该方法返回一个新数组,对原数据没有影响。二、用法示例:let arr = [1,2,3,[4,5,[6,7],8],9] arr.flat()flat()接收一个参数,代表要将当前数组拉平几层,如果不论嵌套几层都全部拉平可以传入arr.flat(Infinity), 将整个数组拉平为一维数组。 注意事项:flat()方法会跳过数组中的空位,并且不会去重,会将原数组中的所有元素都放

2021-01-19 16:58:26 1344

原创 call()、apply()、bind()的作用和区别

call()、apply()、bind()的作用和区别**一、作用改变函数的this指向二、区别区别在于参数传递和调用的方式存在不同使用这三个方法时第一个参数都是指定this的指向,其余参数传递方法call和bind都是依次一个一个的传递,而apply是直接传递一个数组,将所有的参数都写在数组中。其次使用call和apply时是直接调用函数,而使用bind时是返回一个改变了this指向的新函数,还需要再单独调用。例如:xxx.call(this,a,b,c)xxx.apply(this.[a,

2021-01-14 19:51:27 327 1

空空如也

空空如也

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

TA关注的人

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