自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 js实现千分位分割加逗号正则匹配实现,以及详细解析,以及正则实现小写字符串转驼峰字符串

千分位分割var a = '2221221225.88';var b = a.replace(/(\d{3})(?=\d)/g, '$1,')解析:如下第一个括号(\d{3})代表的是3个数字;第二个括号\d代表数字,也就是在满足前面的情况下,下一个是数字的就满足要匹配的东西;$1代表第一个括号的内容;结果如下console.log(b)//222,122,122,5.88...

2019-08-20 15:45:37 1088 1

原创 js 闭包应用场景

闭包就是返回的那个匿名函数,一直引用着外层函数的某个变量,导致那个变量无法销毁,闭包就可以一直调用,外层函数的活动对象已经销毁,但是闭包的活动对象并没有销毁应用场景一.页面有很多li元素,点击每一个li获取到该li标签的索引index。如下代码并不能获取到点击的li的索引使用闭包可以实现该需求应用场景二.延迟函数中的回调应用场景三应用...

2019-08-17 22:46:37 388

原创 2023web前端秋招,牛客网上笔试答题,读取多行数据存储问题,看了这篇,秋招上岸大厂不是事

line1 = readline().split(' '),line2 = readline().split(' ').map(Number),line3 = readline().split(' '),每运行一次readline(),就读取一行数据而且返回值是当行数据的字符串组成形式所以如果是多行的话,一般题目会让在第一行告诉接下来还有n行数据需要读取这个时候就for循环n次 ...

2019-08-03 20:31:26 667

原创 2022秋招web前端开发工程师vue必刷题

目录1.解释vue虚拟dom原理2.解释双向数据绑定3.解释render作用4.解释slot作用,,,5.v-if与v-show的区别6.VUE生命周期解释7.vue history与hash区别以及如何判断history与hash是否造成页面改变8.vue中computed与data中的值在双向数据绑定处理中有什么不同点9.computed生命周期10.v...

2019-07-29 20:16:15 1249 1

原创 2022前端秋招面试网络以及浏览器缓存

目录1.七层网络图示​2.tcp三次握手第一次握手(SYN-SENT(synchronization_sent同步已发送))第二次握手(SYNC_RCVD(synchronization_recieved同步已收到))第三次握手(ESTABLISHED)3.从输入url到页面加载完成发生了什么?——前端角度4.session是什么?5.http协议6....

2019-07-10 20:36:51 613 1

原创 2022秋招前端面试题集结,刷完之后,助你快速拿offer,获高薪

1.link与import区别二者区别:link属于html标签,而@import是css提供的。 页面被加载时,link因为是HTM标签, 把认会同时被加载,而@import引用的css会等到页面加载结束后加载。 link是html标签,因此没有兼容性,而@import只有IE5以上才能识别。 link方式样式的权重高于@import的。1.浏览器缓存...

2019-07-07 20:38:12 729 1

原创 css 类名权重问题 2022快手秋招web前端试题

具体原因:都是class 权重都是一样的,从上而下执行 先执行红色在执行蓝色 蓝色把红色覆盖了

2019-07-02 11:26:21 430

原创 js 正则匹配常用的基础知识,看完这篇文章,再也不用害怕正则问题了

从零基础学习js正则匹配1.正则的基础写法varreg=/^$/;//=>两个斜杠中间包含一些内容就是正则,两个斜杠之间包含的全部内容都是元字符2.常用的校验规则[量词元字符]+:让前面的元字符出现一到多次?:出现零到一次*:出现零到多次{n}:出现n次{n,}:出现n到多次{n,m}:出现n到m次[特殊意义的元字符]:转义字符(把一...

2019-06-12 20:21:10 3226 1

原创 c语言实现快速排序

c语言实现快速排序

2023-02-28 11:38:22 233 2

原创 Vue+ElementUI中 el-dialog弹框蒙层问题

开发项目时 页面中用到了2个弹框(或者是dialog中再嵌套dialog),会出现2个灰色蒙版层叠加,需要再点一下蒙层才会消失。用一个属性解决 :append-to-body="true"

2023-02-10 11:20:34 1641

原创 前端利用fetch实现下载文件到本地

前端利用浏览器自带fetch实现下载文件到本地

2023-02-08 19:33:46 2224

原创 centos 安装nvm管理node

centos 快速安装nvm管理node

2022-10-14 16:31:34 305 1

原创 jenkins使用Git参数化构建——指定branch、commit大法

jenkins使用Git参数化构建——指定branch、commit大法

2022-08-23 14:55:19 2694

原创 vue父组件调用子组件的方法

vue父组件调用子组件的方法

2022-07-28 11:20:23 22496 1

原创 vue子组件调用父组件的方法

vue子组件调用父组件的方法

2022-07-28 11:15:47 6532

原创 iframe.contentWindow介绍

iframe.contentWindow介绍

2022-07-21 19:48:21 4905

原创 for of与for in的区别

for of与for in的区别

2022-06-16 19:43:57 336

原创 浏览器对同一个host(域名)支持建立多少个tcp连接呢?

背景1.tcp相关知识http 1.0默认一次tcp连接进行一次http请求之后就会断开(由于资源浪费,有些服务器支持通过配置支持多次)http 1.1请求头配置:Connection:keep-alive = true,只要tcp连接不断开(默认2小时),一直可以进行http请求,但是一个tcp连接同一时间只支持一个http请求Connection:keep-alive = false,只能发一次http请求http 2.0:多路复用技术Multiplexing,一个tcp可以并发多个htt

2022-04-27 15:32:47 2455

原创 2022年4月问题积累

1.top与translate区别?2.js内存回收机制3.表单是否可以跨域?4.变量是存储在内存中还是浏览器中呢?5.get与post请求的区别?get的url参数限制多少?6.cookie的常见属性?7.如何中断axios?7.vue相关(1)v-for 的key的作用(2)vue的生命周期与react生命周期的区别(3)vue的指令(4)vue的双向数据绑定,解释其实现原理(5)观察者模式在vue中的体现(6)v-router 组件复用参数失效..

2022-04-19 17:23:19 538

原创 vue中v-for key的作用

key 的特殊 attribute 主要用在 Vue 的虚拟 DOM 算法,在新旧 nodes 对比时辨识 VNodes。如果不使用 key,Vue 会使用一种最大限度减少动态元素并且尽可能的尝试就地修改/复用相同类型元素的算法。而使用 key 时,它会基于 key 的变化重新排列元素顺序,并且会移除 key 不存在的元素。有相同父元素的子元素必须有独特的 key。重复的 key 会造成渲染错误。在截图中我们重点看红线框选的话,我们用个案例来演示一下。接下来我们来演示下我们添加水果后的效果,

2022-03-11 11:48:27 1941

原创 vue生命周期钩子函数为什么不能使用箭头函数

来自vue官方文档的解释:所有生命周期钩子的 this 上下文将自动绑定至实例中,因此你可以访问 data、computed 和 methods。这意味着你不应该使用箭头函数来定义一个生命周期方法 (例如 created: () => this.fetchTodos())。因为箭头函数绑定了父级上下文,所以 this 不会指向预期的组件实例,并且this.fetchTodos 将会是 undefined。箭头函数自己没有定义 this 上下文,而是绑定到其父函数的上下文...

2022-02-21 15:46:29 2414

原创 linux 安装canvas报错

目录错误node_modules/canvas/build/Release/canvas.node" (not found)Package pixman-1 was not found in the pkg-config search path.Perhaps you should add the directory containing `pixman-1.pc'to the PKG_CONFIG_PATH environment variableNo package 'pixman-1' found

2022-01-11 20:25:18 2407

原创 require from ‘xxx‘是如何找到node_modules目录下的依赖包?

通过依赖包的package.json文件中的main属性指定的路径,找到对应的模块在 Node.js 模块系统中,如果 require 的模块不是核心模块,而且没有 ‘./’ 之类的开头,那就需要从当前 package 的 node_modules 里面找,找不到就到当前 package 目录上层 node_modules 里面取… 一直找到全局 node_modules 目录。这样找到的往往是文件夹,所以接下来就是处理一个文件目录作为 Node 模块的情况。如果文件目录下有 package.jso

2021-12-23 16:42:56 1563

原创 yarn相关知识

1. 什么是registry2. 依赖的版本含义及写法3. 依赖类型及区别(devDependences,devDependences,peerDependences,optionalDependencies,bundledDependencies)4. 缓存介绍5.yarn.lock文件作用及介绍6.yarn install安装依赖的过程7. 依赖关系树的模块扁平化8. 常用的yarn命令介绍...

2021-12-17 14:58:36 118

原创 js promise执行的时候,如果调用一个接口,这个接口可能受到网络等各方面的影响,造成接口出错,如果保证接口重试具体次数时,才去执行promise的resolve(),本文将呈现一个自动重试的方法

function autoRetry(func, retryMax) { retryNum = 0; let funcName = 'foo' return funcR = function () { let params = arguments; return new Promise((resolve, reject) => { func(...params).then(result => { resolve.

2021-11-11 16:16:53 1573 1

原创 canvas-prebuilt.node (not found)

目录在linux环境安装canvas 报错如下解决方法:在linux环境安装canvas 报错如下Package pixman-1 was not found in the pkg-config search path.Perhaps you should add the directory containing `pixman-1.pc'to the PKG_CONFIG_PATH environment variableNo package 'pixman-1' found

2021-11-05 10:58:44 887 2

原创 css画出三条横线

欢迎大家来补充好的方案

2021-10-26 16:18:36 980 2

原创 js实现v-model

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title></head><body> <div>.

2021-10-26 15:41:21 623 1

原创 ES6---箭头函数()=>{} 与function的区别

1.箭头函数与function定义函数的写法://functionfunction fn(a, b){ return a + b;}//arrow functionvar foo = (a, b)=>{ return a + b };2.this的指向:使用function定义的函数,this的指向随着调用环境的变化而变化的,而箭头函数中的this指向是固定不变的,一直指向的是定义函数的环境。//使用function定义的函数function foo(){ cons...

2021-10-22 17:55:17 484

原创 webpack依据不同的文件类型配置不同的域名

问题背景,有时候需要将打包结果根据不同的文件类型配置不同的publicPath比如js、css、fonts、png单独配置不同的域名module.exports = { // publicPath: '/', publicPath: process.env.NODE_ENV === 'production' ? `//j1${cdnPrev}` : '/', pluginOptions: { publicPath: { css: pro.

2021-10-22 14:59:36 496

原创 解决yarn或者npm install 时,源码编译阶段Building fresh packages... cwebp-bin optipng-bin

yarn卡住的状态npm 卡住的状态从/root/test/lmbi-webapp/node_modules/pngquant-bin可以去找 lib/install.js如下

2021-09-07 19:56:07 2486 1

原创 快速理解Vue 使用 vm.$set 解决对象新增属性不能响应的问题

Vue 无法检测到对象属性的添加或删除。由于 Vue 会在初始化实例时对属性执行 getter/setter 转化,所以属性必须在 data 对象上存在才能让 Vue 将它转换为响应式的。但是 Vue 提供了 Vue.set (object, propertyName, value) / vm.$set (object, propertyName, value) 来实现为对象添加响应式属性,那框架本身是如何实现的呢?Vue 源码export function set (target: Array&l

2021-08-16 15:05:55 1480

原创 100个人站成一圈,进行1,2,3报数,报到3的退出这个队列,循环报数1,2,3,1,2,3,报3的自动退出这个圈,最后是谁退出这个队列

var a = [];for(let i=1;i<=100;i++) { a.push(i);}function baoshu(arr, num) { // let count = 0; // for(let i=0;i<arr.length;) { // count++; // if(count === 3) { // arr.splice(i,1); // count = 0.

2021-07-13 16:02:27 815 3

原创 node.js中Stream流的作用

一、Node.js中的stream(流)的概念及作用?什么是流?日常生活中有水流,我们很容易想得到的就是水龙头,那么水龙头流出的水是有序且有方向的(从高处往低处流)。我们在nodejs中的流也是一样的,他们也是有序且有方向的。 stream:处理系统缓存的方式 nodejs中的流是可读的、或可写的、或可读可写的。 并且流继承了EventEmitter。因此所有的流都是EventEmitter的实列。1.Node.js中有四种基本的流类型:Readable–可读的流(比如 fs.creat

2021-07-12 11:06:13 864 2

原创 cookie的常见属性

1、什么是Cookie?Cookie是由W3C组织提出,最早由NetScape社区发展的一种机制。Cookie是存储于访问者的计算机中的变量。每当同一台计算机通过浏览器请求某个页面时,就会发送这个cookie。Cookie的作用就是用于解决"如何记录客户端的用户信息":①当用户访问web页面时,他的名字可以记录在Cookie中。②在用户下一次访问该页面时,可以在Cookie中读取用户访问记录。Cookie实际上是一小段文...

2021-06-21 16:18:36 1444

原创 前端浏览器跨域相关,看了这篇面试时遇到跨域相关的问题如行云流水、游刃有余、泰然自若、轻松自在

1.同源策略参考MDN同源的解释同源策略是一个重要的安全策略,它用于限制一个origin的文档或者它加载的脚本如何能与另一个源的资源进行交互。它能帮助阻隔恶意文档,减少可能被攻击的媒介...

2021-06-04 13:59:13 241 3

原创 一文详解js中slice与splice的区别

var fruits = ["Banana", "Orange", "Lemon", "Apple", "Mango"];var citrus = fruits.slice(1,3);

2021-05-28 20:21:08 371 2

原创 一文详解npm 并行(&)以及串行(&&)执行多个scripts命令

通过npm run <commander>可以运行package.json中脚本,Npm 命令不能提供立即运行多个脚本的方式,同时运行需要打开多个终端窗口

2021-05-28 17:11:52 3484 2

原创 前端性能优化-chrome中的Waterfall

浏览器根据HTML中外连资源出现的顺序,依次放入队列(队列),然后根据优先级确定向服务器获取资源的顺序。同优先级的资源根据HTML中出现的先后顺序来向服务器获取资源。瀑布中各项内容的含义:排队: 出现下面的情况时,浏览器会把当前请求放入队列中进行排队有更高优先级的请求时和目标服务器已经建立了6个TCP链接(最多6个,适用于HTTP / 1.0和HTTP / 1.1)浏览器正在硬盘缓存上简单的分配空间停滞: 请求会因为上面的任一个原因而阻塞DNS...

2021-05-27 16:33:42 922 2

原创 详解[].shift.call( arguments ) 和 [].slice.call( arguments )

[].slice.call( arguments ) ,顾名思义是 “把类数组对象转为数组对象”。确实这是我们想要实现的功能! 但这仅仅是说明了结果并没有解答其原理。来点基础知识:[].slice.call( arguments )// 等效于Array.prototype.slice.call( arguments )个人理解:要把arguments 转为数组对象!本着 能少写就少写,能不写就不写的想法,想到slice():可从已有的数组中返回选定的元素。slice 不会改变原来的数组.

2021-05-25 21:03:26 284

空空如也

空空如也

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

TA关注的人

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