自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 .gitignore

秉持本心关注22019.06.13 14:59:35字数 902阅读 174,702一、简绍我们做的每个Git项目中都需要一个“.gitignore”文件,这个文件的作用就是告诉Git哪些文件不需要添加到版本管理中。比如我们项目中的npm包(node_modules),它在我们项目中是很重要的,但是它占的内存也是很大的,所以一般我们用Git管理的时候是不需要添加npm包的。二、常用的规则/mtk/ 过滤整个文件夹*.zip 过滤所有.zip文件/mtk/do.c 过滤某个...

2021-06-05 18:53:50 198

转载 前端常见跨域解决方案(全)

什么是跨域?跨域是指一个域下的文档或脚本试图去请求另一个域下的资源,这里跨域是广义的。广义的跨域:1.) 资源跳转: A链接、重定向、表单提交2.) 资源嵌入: <link>、<script>、<img>、<frame>等dom标签,还有样式中background:url()、@font-face()等文件外链3.) 脚本请求: js发起的ajax请求、dom和js对象的跨域操作等其实我们通常所说的跨域是狭义的,是由浏览器同源策略限制..

2021-06-04 22:17:29 160

转载 浏览器输入URL渲染过程

浏览器从输入URL到渲染完页面的整个过程从输入URL到渲染出整个页面的过程包括三个部分:1、DNS解析URL的过程2、浏览器发送请求与服务器交互的过程3、浏览器对接收到的html页面渲染的过程一、DNS解析URL的过程 DNS解析的过程就是寻找哪个服务器上有请求的资源。因为ip地址不容易记忆,一般会使用URL域名(如www.baidu.com)作为网址。DNS解析就是将域名翻译成IP地址的过程。具体过程: 1)浏览器缓存:浏览器会按照一定的频率 缓存DN...

2021-05-26 16:42:09 580

原创 vue组件异步传值报错处理

解决问题前先串一遍父子组件的生命周期钩子顺序渲染过程父组件挂载完一定在子组件都挂载完成后才算父组件挂载完成,所以父组件的 mounted 一定是在子组件的mounted后面父beforeCreate ->父created -> 父beforeMounted -> 子beforeCreate -> 子created -> 子 beforeMounted -> 子mounted -> 父mounted子组件更新过程1.影响到父组件: 父befo..

2021-05-23 21:08:24 697

原创 typeof和instanceof

typeof定义typeof返回一个字符串,表示未经过计算的操作数的类型语法typeof 运算符后面接操作数typeofoperandtypeof(operand)参数operand一个表示对象或者原始值的表达式,其类型会被返回描述// 数值typeof 123 // 'number'typeof NaN // 'number'; // 尽管它是 "Not-A-Number" (非数值) 的缩写typeof Number('1') // 'num...

2021-05-21 11:16:52 147

原创 js查找数组中与目标值最相近的数值

var arr = [500, 400, 320, 200, 1, 10, 8, 100, 190, 170, -123, 44, -44]; // 原有数组function findCloseNum(arr, num) { var index = 0; // 保存最接近数值在数组中的索引 var old_value = Number.MAX_VALUE; // 保存差值绝对值,默认为最大数值 for (var i = 0; i < arr.length; i++) {...

2021-05-18 23:42:46 1337

转载 线程vs进程

并行处理了解线程和进程之前先认识下并行处理会更好的理解线程和进程var sq = Math.sqrt(9)var rand = Math.random(10)var round = Math.round(4.6)console.log(sq,rand,round)计算机执行上面的任务。如果是单线程需要四步前三步都是计算最后一步显示结果,如果是多线程则需两步即可,第一步分出三个线程去并行处理计算任务,第二步直接显示结果。但是线程并不能单独存在,它是由进程来启动和管理的线程vs进程

2021-05-18 10:06:00 86

转载 Promise面试题

15道ES6 Promise实战练习题,助你快速理解Promise前言Promise是ES6中新增的特性,现在很多前端框架像AngularJS,Vue等在HTTP请求之后都是返回的Promise处理,因此Promise是必须要掌握的一个知识点。本文将为大家分享15道由易到难的ES6 Promise题, 帮助你快速理解Promise。基础题01const promise = new Promise((resolve, reject) => { console.log(1)

2021-05-16 19:30:53 807

原创 promise.all使用

处理一组promise的异步请求,通过每张图片的前缀url,依次异步请求获取图片自己的base64码然后渲染图片//index.vue//template <li class="policy-img" v-for="(it,index) in imageInfos"> <img :src="it.imgUrl" alt/> <i @click="imageInfos.splice(index,1)">×</

2021-05-16 18:55:28 120

原创 promise理解应用

promise理解应用什么是promise一种处理异步编程的解决方案,本质是对象或者构造函数,内部存放在未来某个事件执行结束的结果。避免异步回调层层嵌套js是单线程执行任务,一次执行一个任务,为解决此问题,js将任务执行模式分开为两种,异步和同步。处理异步执行的任务通过回调方式进行处理举个例子 一级分类的集合数组里面对应的每项item下还有 二级分类集合数据异步请求一级分类获取 每项 再通过每项ID 请求二级分类集合 这样形成了异步请求层层嵌套 fetch(initOr..

2021-05-16 11:31:55 239

原创 HTTP 协议

HTTP 协议是超文本传输协议,是浏览器和服务器之间的通信协议。1991 年 HTTP 正式诞生,当时的版本是 0.9HTTP/0.9 :协议定义了客户端发起请求,服务端响应请求的通信模式HTTP/1.0:增加的接收文件类型,请求头部Accept字段告诉服务器可以接收的文件类型,响应头部 Content-Type告诉浏览器返回的文件类型依靠头部可以实现 缓存cookie 认证信息等功能1.0每次通信都要经过 建立连接/传输数据/断开连接三个阶段,如果一个页面引入的较多的外部文件时候,

2021-05-13 14:03:29 82

原创 ES6中 export与import

ES6中exports 与import一个独立的模块文件暴露接口/变量供其他程序文件使用,通过export关键字导出该文件变量,程序文件通过import关键字引入该模块文件变量命名导出(names export)可以导出多个函数/变量,但必须要明确导出的变量名,在工具类函数中常使用// utils.jsexport const rand = Math.random();export function square(x) { return x * x;}// index.j

2021-05-13 11:40:26 2118

原创 节流

节流高频持续触发事件,如果执行动作比较复杂会造成页面卡死现象,有些dom事件我们是无法控制触发频率如鼠标移动事件onmousemove, 滚动滚动条事件onscroll,窗口大小改变事件onresize这些都是高频触发事件节流的思路是 延时周期内执行一次动作,期间有事件触发不执行动作,周期结束后,如有新事件触发则开始新一轮周期动作。高频触发事件动作定期执行,相对平滑,常用业务场景 常见布局中左侧菜单栏,右侧菜单相对的内容,上下滚动阅读右侧内容时候,左侧对应菜单标签高亮。<!DOC

2021-05-11 14:10:51 152

原创 防抖

防抖连续触发一个请求服务端的事件,该事件会频繁访问数据库,而实际上,只有最后一次搜索结果是用户想要的,前几次都是在浪费服务器资源和网络宽带。解决方法,为函数设置一个合理的时间间隔,避免在短时间内频繁触发又保证用户操作后即时得到结果。<!DOCTYPE html><html><head> <meta charset="UTF-8"> <title>防抖</title></head><

2021-05-10 21:06:36 81

原创 JavaScript数据类型

JavaScript数据类型笔记数据类型是JavaScript 编程语言的基础知识 有 空(Null)未定义(Undefined)字符(String)数字(Number)布尔值(Boolean)符号(Symbol)对象(Object)数据类型分基础类型空(Null)未定义(Undefined)字符(String)数字(Number)布尔值(Boolean)符号(Symbol)引用类型对象(Object)基础类型是值传递,新声明的变量等值传递了原来的变量,属于深拷贝引用类型是声明的变量..

2021-05-10 16:23:49 60

原创 css水平垂直居中

几种水平垂直居中的方法1. 弹性盒模型 flex:<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>css垂直居中</title></head><style> main { width: 400px; height: 400px; back

2021-05-10 14:57:26 55

转载 基础前端面试题

高频前端开发面试问题及答案整理来自:CSDN,作者:雨中的羽毛链接:https://blog.csdn.net/p358278505/article/details/78718283说说你对闭包的理解使用闭包主要是为了设计私有的方法和变量。闭包的优点是可以避免全局变量的污染,缺点是闭包会常驻内存,会增大内存使用量,使用不当很容易造成内存泄露。闭包有三个特性:1.函数嵌套函数2.函数内部可以引用外部的参数和变量3.参数和变量不会被垃圾回收机制回收请你谈谈Cookie的弊

2021-05-10 12:48:06 1395

转载 css笔记

CSS中 link 和@import 的区别是(1) link属于HTML标签,而@import是CSS提供的; (2) 页面被加载的时,link会同时被加载,而@import引用的CSS会等到页面被加载完再加载;(3) import只在IE5以上才能识别,而link是HTML标签,无兼容问题; (4) link方式的样式的权重 高于@import的权重.position:absolute和float属性的异同A:共同点:对内联元素设置`float`和`absolute`属性,可以让

2021-05-10 11:52:36 51

原创 js闭包

闭包的理解闭包翻译自英文单词 closure,这个概念第一次出现在 1964 年的《The Computer Journal》上,由 P. J. Landin 在《The mechanical evaluation of expressions》一文中提出了closure 的概念。为了想要一个私有变量或者方法,通过函数内部访问函数外部作用域时会产生闭包,优点:实现数据与函数隔离。避免变量在该函数作用域外被全局污染;缺点:闭包内部的变量会常驻内存不会被垃圾回收机制销毁;对于闭包的内存泄漏说

2021-05-10 11:37:13 105

原创 对Vue的理解和总结

Vue.js概述用于构建用户界面渐进式的MVVM框架,核心库只关注视图层渐进式的含义:主张最少,vue包含了声明渲染,组件化系统,客户端路由,状态管理,构建工具等 这些我们都可以根据需求来逐渐扩展组件机制对一个功能和样式进行独立的封装,让HTML元素可以得到扩展,代码得到复用,开发灵活,高效。vue组件拥有外部传入的属性(prop)和事件,自己的状态(data)和依据状态和数据计算的计算属性(computed),各个纬度组合起来最终呈现的样子和交互逻辑。组件数据传递每一个组件都是

2021-05-07 23:04:20 981

原创 js常用工具函数

总结一些自己常用的工具方法//删除左右两端的空格export function trim(str) { let reg = /^\s*|\s*$/g;   return String(str).replace(reg, "");}//校验整数。export function isNum(num) { let re = /^[0-9]+$/; return re.test(Number(num));}//校验价格。export function isMoney(n)

2021-05-01 11:01:41 174

原创 git多条commit合并为一条

git rebase -i commit-id开发中dev分支可能会提交很多commit 但又都属于同一个需求里,上线合并分支的时候可以将其合并为一条git log 查看提交历史git rebase -i 316f27b5 //分支最新一条commit ID用linux的命令 进入vim编辑把标记的都改成 s 除了第一条 按i键进入编辑模式按esc键退出编辑模式 :wq 是保存 保存完以后不用进入编辑模式,具体看留哪一条剩下的都删了 连着按两次d键就是删除整行T.

2021-04-30 16:55:27 730 2

原创 git命令使用总结

**git日常操作总结**前端开发代码管理离不开git,svn这些版本工具目前常用的也就是git,在此总结下自己常用的git命令1.自己的项目自己玩儿本地 git仓库初始化git init创建远程仓库每次入职一家公司都要将需要维护的项目从远程仓库download本地仓库关联远程仓库分支暂存提交推送...

2021-04-30 16:47:09 99

原创 VUE警告报错日志总结

[vue-router] Duplicate named routes definition: { name: "供应商管理", path: "" }警告:重复命名路由,在路由配置文件中,找到对应name,会发现有两处或者两处以上都使用了“供应商管理”这个name;解决去掉重复name,name唯一就行 当然也不影响程序运行Named Route '商城管理系统' has a default child route. When navigating to this named route (:t

2021-02-25 10:40:46 738

原创 javascript中对this的认识

在学习拉勾朱德龙老师课程做的笔记,要学具体的链接在这里https://kaiwu.lagou.com/course/courseInfo.htm?courseId=180#/detail/pc?id=3179数据类型和函数是编程重要概念,前者储存数据,后者储存代码在JavaScript中函数比较强大,用途比较多可以赋值给一个变量可以有自己的属性可以作为参数被传递this是JavaScript一个关键字,是一个指针,指向调用它的的对象首先this指向的是一个对象,是函数执行上下

2021-02-07 10:26:41 128

原创 Javascript数据可视化库

1.https://bit.dev提示:使用Bit可以在应用之间快速重用UI组件。使用云库为你的团队提供支持,以加快您的应用开发速度。这些都是免费的。1、D3js2、ChartJS3、ThreeJS4、Echarts & Highcharts5、Metric-Graphics6、Recharts7. Raphael8、C3js9、React...

2021-01-20 11:51:00 91

原创 javascript 同步异步的理解总结

javascript同步异步的理解总结Java是多线程语言,利用多线程可以处理很多事情,文件上传,下载JavaScript是单线程同一时间内每次只能执行一个任务,如果同一时间有多个任务,就需要等待上一任务执行结束后才能执行下一任务。fun f1(){ console.log(1)}fun f2(){ console.log(2)}f1()f2()//1//2js代码都是自上而下执行,执行完f1() 然后再执行f2() 这是同步执行,如果f1是读取文件或者ajax...

2021-01-13 14:30:09 152

原创 DOM学习总结

DOM学习总结DOM(document object model) 浏览器文档对象模型dom是 JavaScript操作html的接口 实现一些前端的功能动态渲染列表,表单表格数据处理增删改查 监听点击提交事件 实现动态展开树组件,表单组件级联等这类复杂的操作 懒加载一些样式文件或脚本主要3个部分组成DOM节点DOM事件选择区域dom节点用两个部分 元素和标签标签是html基本单位 div span p 标签节点是DOM树的基本单位,多种类型, 元素节点,文本节点

2021-01-12 10:45:58 577

原创 微信平台h5开发问题总结

微信平台h5开发问题总结1、redirect_uri参数错误, 域名与后台配置不一致 10003问题原因:微信进行授权操作时候,redirect_uri参数域名与微信后台配置的授权域名不一致产生的错误解决方法:1、登入微信公众平台:https://mp.weixin.qq.com2、公众号设置3、配置对应的网页域名...

2021-01-08 16:48:55 217

转载 js array数组常用方法

js array数组常用方法1栈方法 先进后出push() 在数组后面最后一项增加值参数 :可以为多个值或者数组返回:数组的长度,改变原数组var a = [1,2,3]a.push(4) //返回长度 4,改变原数组console.log(a) // [1,2,3,4]pop() :删除数组最后一项,没有参数返回:被删除的值,改变愿数组var b = [2,3,4]console.log(b.pop()) //返回被删除的值 4console.log(b) //

2020-12-31 16:34:30 144

原创 vue webpack3升级webpack4 踩坑记录

vue webpack3升级webpack4 踩坑记录1 webpack4 需要node.js版本>= 102先卸载旧版本插件,重新安装新版本插件 webpack4版本中cli工具分离成了webpack核心库与webpack-cli命令行工具两个模块npm uninstall webpack webpack-bundle-analyzer webpack-dev-server webpack-merge -Dnpm install webpack webpack-cli webp.

2020-12-31 11:17:31 879

原创 promise使用总结

promise使用总结promise 是处理异步编程的一种处理方式,可以将异步操作按照同步操作的方式编写。是一个对象或者构造函数,里面存放着某个未来才会执行的结果的方法(一般就是异步操作)自己身上有all、reject、resolve这几个方法,原型上有then、catch等方法。* 优点* 将异步操作以同步操作的流程表现出来,避免层层嵌套的回调函数* 也有缺点 一但建立不能取消* 其次如果不设置回调函数 内部会抛出报错,不会反应到外部* 三 处于pending状态时候 无法得知目前处

2020-12-28 11:41:21 131

原创 html基础知识点

浏览器 单线程 渲染引擎(浏览器内核) javascript引擎先加载http资源 渲染解析html文件 遇到 script 引用标签 停止解析html同时通知网络线程加载文件 文件下载完毕 执行script代码 执行完毕 切换回 渲染引擎继续 渲染页面<meta http-equiv="Refresh" content="60" URL="page1.html">每隔几秒刷新页面 跳转到指定页面 用于权限访问限制页面link 标签 rel 属性<link r...

2020-06-19 16:59:45 84

空空如也

空空如也

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

TA关注的人

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