自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 使用clipboard.js复制异步数据到粘贴板

需求描述:点击复制粘贴按钮时,调取接口,然后复制接口返回的数据。1. 安装npm install clipboard -S2.使用引入:import Clipboard from 'clipboard'html: <a href="javascript:;" @click="copy" id="copy" :data-clipboard-text="copyData">复制到粘贴板</a>实现思路:点击按钮时,执行copy方法(先使用await,待接口有响应之后

2020-12-27 10:10:15 1053 1

原创 浅谈继承的7种方式

浅谈继承的4种方式最近总结了一下继承的4种方式,主要包括:原型链继承、构造函数继承、组合继承、以及class类继承(ES6提出)。1,原型链继承继承的本质:子类的原型等于父类的实例。 //父类:人 function Person1 () { this.head = '我是父类person1'; } //子类:学生,继承了“人”这个类 function Stude...

2019-06-27 23:15:04 345

原创 如何实现一个数组扁平化函数

1,递归function flattenDeep(arr){ let deepArr = [] arr.forEach(element => { if(Array.isArray(element)){ deepArr = deepArr.concat(flattenDeep(element)) }else{ ...

2019-06-16 16:37:56 864

原创 JavaScript异步加载的方式有哪些

在传统的做法中,所有的script元素均应该放在页面的head元素中。第一种位置中,把script放在了head中,这也是传统的做法。目的是把所有外部文件(css文件和js文件)的引用都放在相同的地方,可是,放在这里,意味着必须得全部的js代码都被下载解析和执行完成以后,才开始呈现页面的内容(浏览器遇到body标签才开始呈现内容)。如果js代码很多,无疑会导致页面呈现的内容出现延迟,用户体验性...

2019-06-12 22:25:58 257

原创 实现Promise的相关用法

Promise.all([p1,p2,p3]) 以数组的形式传入每个promise实例,返回一个新的promise对象每个实例的结果均为resolve时,将结果推入数组中,并resolve出来。有一个实例的结果为reject时,就reject出来Promise.all方法的参数可以不是数组,但必须具有 Iterator 接口,且返回的每个成员都是 Promise 实例。Promise.a...

2019-06-11 21:03:50 244

原创 浏览器事件代理机制原理?

关于浏览器事件代理弄明白浏览器事件代理事前,先了解下事件、事件流。一,事件HTML DOM 允许 JavaScript 对 HTML 事件作出反应。即操作对应HTML元素时,会触发相应事件(包含事件源,事件名以及对应的事件回调函数)二,事件流DOM(文档对象模型)结构是一个树型结构,当一个HTML元素产生一个事件时,该事件会在元素结点与根结点之间的路径传播,路径所经过的结点都会收到该事件...

2019-06-06 14:52:17 1365

原创 浅拷贝与深拷贝的区别。如何实现深拷贝。

关于拷贝应该是大家面试中经常被问到的问题,特此总结一下,为以后积累经验。1,数据类型巩固拷贝之前必须先回顾下数据的分类,知道其存储的位置。基本数据类型:1)分类 (String Number Boolean Undefined Null Symbol)2)特点(数据存在栈内存中)引用数据类型:1)分类 (Object)2)特点(栈内存中存的是指向堆内存中数据对象的一个地址值,...

2019-05-31 17:43:52 204

原创 let、const、var 的区别有哪些?

在ES5中,声明变量只有var和function两种形式。但是因为var声明的变量会有一定的缺点(内层变量可能覆盖外层变量的问题以及用来计数的循环变量泄露为全局变量,下面会有详细的介绍),ES6提出了使用let和const声明变量,下面就来看看他们之间的区别。1,什么时候提出的?var是ES5提出的,let和const是ES6提出的。2,是否存在变量提升?var声明的变量存在变量提升...

2019-05-30 15:06:00 9649

原创 什么是BFC?BFC的原理是什么?如何创建BFC?

1,什么是BFC?1)BFC(Block formatting context)直译为“块级格式化上下文”。BFC它是一个独立的渲染区域,只有Block-level box(块元素)参与,它规定了内部的Block-level box如何布局,并且与这个区域外部毫不相关。2)可以理解成:创建了 BFC的元素就是一个独立的盒子,里面的子元素不会在布局上影响外面的元素(里面怎么布局都不会影响外部),...

2019-05-30 09:46:12 10603 1

原创 执行上下文以及作用域的理解

(一)执行上下文可以理解成,执行JavaScript代码的一种环境。(个人理解为任何事情的发生都是在一定环境下发生的,执行js代码也是一样,必然是在某种环境下进行。)上下文分为以下3类:1)全局执行上下文:指的是浏览器中的全局对象window对象,只有这一个。在严格模式下,this值为undifined,非严格模式下,this值即为window对象。执行代码时,最先执行全局执行上下文终的...

2019-05-28 17:25:45 1116

原创 ES6-iterator接口

1,什么是iterator1)出现的原因:处理不同的数据结构js中主要的数据集合是数组和对象,ES6出现了map和set数据结构,即共4种。用户还可以组合使用它们,定义自己的数据结构,比如数组的成员是Map,Map的成员是对象。这样就需要一种统一的接口机制,来处理所有不同的数据结构。2)本质:是一种接口。遍历器(Iterator)就是这样一种机制。它是一种接口,为各种不同的数据结构提供统一...

2019-05-25 17:43:03 485

原创 vue之mvvm模式实现原理

index.html文件:<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>vue-demo</title></head><body> <div id="vue-app"> ...

2019-05-13 09:30:05 296

转载 浅谈单页面和多页面应用的区别

浅谈单页面和多页面应用的区别最近做项目,领导说做一个多页面应用,之前做过单页面应用,为此查阅相关资料,总结一下二者的异同。何为多页面?多页多页就是应用有多个页面。何为单页面?单页单页就是应用有单个主界面。|单页面多页面组成:一个外壳页面和多个页面片段组成组成:多个完整页面组成css、js等资源:共用。只在外壳部分加载css、js等资源:不共用。加载一个页面就...

2019-05-07 17:27:15 6428

空空如也

空空如也

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

TA关注的人

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