自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(52)
  • 资源 (2)
  • 收藏
  • 关注

转载 git官网下载太慢解决方法

下载传送门https://npm.taobao.org/mirrors/git-for-windows/选择版本进入后,选择你想要的版本,它里面是 降序排序。我想下载新版本怎么做?:拉到最底部,如下图所示:2. 我想下载旧版本怎么做? 拉到最顶部,如下图所示:怎么下载?点击后,出现如图所示结果:————————————————版权声明:本文为CSDN博主「王佳斌」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。原文链接:https://blog.c

2020-06-30 08:55:24 142

转载 观察者模式和发布订阅模式的区别

之前一直对观察者模式和发布订阅模式的区别理解不深,正好这段时间在看vue源码的分析,vue数据双向绑定也用到了发布订阅模式,于是又把这两者探究了一番,今天做个笔记加强印象。观察者模式和发布订阅模式最大的区别就是发布订阅模式有个事件调度中心。pubSub.png从图中可以看出,观察者模式中观察者和目标直接进行交互,而发布订阅模式中统一由调度中心进行处理,订阅者和发布者互不干扰。这样一方面实现了解耦,还有就是可以实现更细粒度的一些控制。比如发布者发布了很多消息,但是不想所有的订阅者都接收到,.

2020-06-23 14:30:20 331

转载 元素水平垂直居中(transform,margin,table-cell,jQuery)

https://www.cnblogs.com/wishyouhappy/p/3681037.html

2020-06-23 14:13:25 155

转载 400 道前端面试题!阿里、头条、网易等 19 家大厂面经全公开!

https://baijiahao.baidu.com/s?id=1631033043618227573&wfr=spider&for=pc

2020-06-19 18:20:24 243

转载 React Fiber 原理介绍

一、前言在 React Fiber 架构面世一年多后,最近 React 又发布了最新版 16.8.0,又一激动人心的特性:React Hooks 正式上线,让我升级 React 的意愿越来越强烈了。在升级之前,不妨回到原点,了解下人才济济的 React 团队为什么要大费周章,重写 React 架构,而 Fiber 又是个什么概念。二、React 15 的问题在页面元素很多,且需要频繁刷新的场景下,React 15 会出现掉帧的现象。请看以下例子:https://claudiopro.github

2020-06-19 18:12:14 371

转载 浅析vue的两项原理

一.vue双向绑定原理Vue.js-作者为中国人尤雨溪vue实现数据双向绑定主要是:采用数据劫持结合发布者-订阅者模式的方式,通过Object.defineProperty()来劫持各个属性的setter,getter,在数据变动时发布消息给订阅者,触发相应监听回调。当把一个普通 Javascript 对象传给 Vue 实例来作为它的 data 选项时,Vue 将遍历它的属性,用 Object.defineProperty 将它们转为 getter/setter。用户看不到 getter/sette

2020-06-14 16:55:56 172

转载 vue.js框架原理浅析

vue.js是一个非常优秀的前端开发框架,不是我说的,大家都知道。首先我现在的能力,独立阅读源码还是有很大压力的,所幸vue写的很规范,通过方法名基本可以略知一二,里面的原理不懂的地方多方面查找资料,本文中不规范不正确的地方欢迎指正,学生非常愿意接受各位前辈提出宝贵的建议和指导。使用vue的版本是v2.5.13,采用了flow作为类型管理工具,关于flow相关内容选择性忽略了,不考虑类型系统,只考虑实现原理,写下这篇文章。同步到sau交流社区(首发):https://www.mwcxs.top/

2020-06-14 16:52:01 248

转载 Vue基本原理

经过几天的研究,发现学习框架的底层技术,收获颇丰,相比只学习框架的使用要来的合算;如果工作急需,快速上手应用,掌握如何使用短期内更加高效;如果有较多的时间来系统学习,建议研究一下框架的等层技术、原理。Vue、React、Angular三大框架对比1、VueVue是尤雨溪编写的一个构建数据驱动的Web界面的库,准确来说不是一个框架,它聚焦在V(view)视图层。它有以下的特性:1.轻量级的框架2.双向数据绑定3.指令4.插件化优点:简单:官方文档很清晰,比 Angul

2020-06-14 16:30:43 7775 1

转载 关于vuex的项目中数据流动方式

vue的核心是数据驱动,所有数据变更的时机很重要,也就是watch的内容,一般是数据逻辑的操作。在使用vuex的项目中,我们在vuex中只是发请求、拿数据,在视图中来进行逻辑的操作、数据的更新。1.vuex的作用,vuex在我的理解是这样的我们把多个组件的共用数据放在vuex这个容器中,在视图中我们用过import引入这个state数据或者action方法,我们就拿到了vuex中的数据,有了数据我们在视图中,可以读取这些数据,但是不能更改,vuex中的数据只能在mutation中更改,如果在视图中更

2020-06-14 16:29:46 312

转载 Vue生命周期

Vue在GitHub上面的star数量已经超过了react,虽然npm包下载的数量还没有react多,但是Vue上升的势头真的很猛。Vue生命周期2.0和1.0差别还是有一点的,生命周期的博客文章百度也是很多,今天我简单提一下生命周期,然后说一下一些可能比较没人注意的点。先上Vue官网的生命周期图片:image先罗列出生命周期然后一个一个讲解beforeCreatecreatedbeforeMountmountedbeforeUpdateupdatedbefo

2020-06-14 16:08:01 140

转载 Canvas API详解

概述Canvas API(画布)用于在网页实时生成图像,并且可以操作图像内容,基本上它是一个可以用JavaScript操作的位图(bitmap)。使用前,首先需要新建一个<canvas>网页元素。<canvas id="myCanvas" width="400" height="200"> 您的浏览器不支持canvas!</canvas>上面代码中,如果浏览器不支持这个API,则就会显示<canvas>标签中间的文字——“您的浏览器不

2020-06-14 14:57:05 2888

转载 我看好WebGL

未来都是未知的,虽然我们无法确定未来的科技会发展成什么样,人们的生活会发生什么样的变化,甚至我们以后使用的手机会变成什么样都是无法确定。虽然我们无法预测长远的未来,但是,我们能够看清将会发生的一些变化,这其中就就有HTML5。HTML5HTML5的优势现在已经很明显,在这里先列几个重点:超低的开发成本成为的企业首选强大的跨平台特性只要有浏览器就能查看实时更新页面抛弃版本升级问题多媒体特性可以直接播放视频和音频,不需要再安装flash插件自适应的设计可兼容pc和移动端画布特性可以直接在浏览

2020-06-14 14:28:25 218

转载 WebGPU 到底是什么?

顾名思义,WebGPU是GPU硬件(显卡)向Web(浏览器)开放的低级应用程序接口(API),包括图形和计算两方面的接口。而WebGL是OpenGL ES低级3D图形API的Web版本。WebGPU和WebGL两者都是对GPU功能的抽象,都是为了提供操作GPU的接口。区别主要在于:WebGPU是基于Vulkan、Metal和Direct3D 12,而WebGL基于OpenGL。前者的引擎较新,设计上更好的反映了GPU硬件技术这些年新的发展,能提供更好的性能,支持多线程,采用了偏面向对象的编程风格。我

2020-06-14 14:18:45 3824

转载 Vue.js 技术揭秘

https://ustbhuangyi.github.io/vue-analysis/v3/guide/

2020-06-11 20:34:35 533

转载 React 源码解析

https://react.jokcy.me/

2020-06-11 20:32:12 290

转载 HTTP协议超级详解

HTTP协议简介超文本传输协议(英文:HyperTextTransferProtocol,缩写:HTTP)是一种用于分布式、协作式和超媒体信息系统的应用层协议。HTTP是万维网的数据通信的基础。HTTP的发展是由蒂姆·伯纳斯-李于1989年在欧洲核子研究组织(CERN)所发起。HTTP的标准制定由万维网协会(World Wide Web Consortium,W3C)和互联网工程任务组(Internet Engineering Task Force,IETF)进行协调,最终发布了一系列的RFC,..

2020-06-11 20:27:55 362

转载 js中判断对象数据类型的方法

1.类型定义JS是一种弱类型语言。JS拥有动态类型,相同的变量可以用作不同的类型。JS有7种数据类型:三种基本类型(数字,字符串,布尔),两种引用数据类型(对象,数组),两种特殊数据类型(undefined,null)。JS有5种原始类型:数字,字符串,布尔,undefined,null。2.类型判断对js中不同数据的布尔值类型总结:false:空字符串;null;undefined;0;NaN。true:除了上面的false的情况其他都为true;如下:var...

2020-06-11 20:23:39 867

转载 重绘和回流

浏览器的工作原理浏览器的组成 用户界面- 包括地址栏、后退/前进按钮、书签目录等,也就是你所看到的除了用来显示你所请求页面的主窗口之外的其他部分 浏览器引擎- 用来查询及操作渲染引擎的接口 渲染引擎(浏览器内核)- 用来显示请求的内容,例如,如果请求内容为html,它负责解析html及css,并将解析后的结果显示出来 网络- 用来完成网络调用,例如http请求,它具有平台无关的接口,可以在不同平台上工作 UI 后端- 用来绘制类似组合选择框及对话框等基本

2020-06-11 19:39:42 132

转载 什么是回流,什么是重绘,有什么区别?

html 加载时发生了什么在页面加载时,浏览器把获取到的HTML代码解析成1个DOM树,DOM树里包含了所有HTML标签,包括display:none隐藏,还有用JS动态添加的元素等。浏览器把所有样式(用户定义的CSS和用户代理)解析成样式结构体DOM Tree 和样式结构体组合后构建render tree, render tree类似于DOM tree,但区别很大,因为render tree能识别样式,render tree中每个NODE都有自己的style,而且render tree不包含隐藏的

2020-06-11 19:37:05 220

转载 2020前端最新面试题(vue篇)

2020前端最新面试题(vue篇)https://blog.csdn.net/weixin_45325238/article/details/104968195?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.nonecase&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMac..

2020-06-11 16:37:21 327

转载 Vue事件总线(EventBus)使用详细介绍

busutils - bus.jsimport Vue from 'vue'const bus = new Vue()export default bus 一、传值发送信息import bus from '@/utils/bus'第一个参数为标志变量,第二个参数为通信的值bus.$emit('message', 'hello');接收信息import bus from '@/utils/bus'第一个参数为标志变量,第二个参数中的e为通信的值

2020-06-11 16:21:43 514

转载 vue使用bus进行组件通信

busutils - bus.jsimport Vue from 'vue'const bus = new Vue()export default bus 一、传值发送信息import bus from '@/utils/bus'第一个参数为标志变量,第二个参数为通信的值bus.$emit('message', 'hello');接收信息import bus from '@/utils/bus'第一个参数为标志变量,第二个参...

2020-06-11 16:05:44 911

转载 React组件性能优化:PureRender和Immutable Data

1 前言网页性能最大的限制因素是浏览器重绘(reflow)和重排版(repaint),React的虚拟DOM就是为了尽可能减少浏览器的重绘和重排版,从React的渲染过程看,避免不必要的渲染可以进一步提高性能。2 PureRenderReact优化方法中最常见的就是PureRender,PureRender的原理是重新实现shouldComponentUpdate生命周期方法,让当前传入的state和props和之前的做浅比较,如果返回FALSE,组件就不执行render方法,默认情况返回TRU

2020-06-09 11:31:24 311

转载 React PureRender 及优化 shouComponentUpdate

http://www.ptbird.cn/react-purerender.html

2020-06-09 11:20:35 157

转载 react基本原理及性能优化

一、从React原理谈起react是什么?react是用于构建用户界面的JS框架。因此react只负责解决view层的渲染。react做了什么?Virtual Dom模型 生命周期管理 setState机制 diff算法 React patch、事件系统 react的 Virtual Dom模型virtual dom 实际上是对实际Dom的一个抽象,是一个js对象。react所有的表层操作实际上是在操作virtual dom。经过diff算法会计算出virtual dom

2020-06-08 20:03:23 373

转载 关于vue-cli2和3的那些事

vue-cli能够快速的搭建vue项目结构,在一个新的项目启动为我们配置各种文件目录及项目打包都提供了非常快捷的便利.安装方式的区别:vue-cli 2.0 (据说有其他多种方式,下面是我经常用到的)vue init webpack 2.0projectvue-cli 3.0vue create 3.0project如果你开始搭建vue-cli 3.0 这个时候你电脑的vue cli版本必须大于3.0,如果小于3.0会提示你电脑当前vue-cli的版本,同时告诉你2个命令方式

2020-06-08 19:20:14 459

转载 常见六大Web安全攻防解析

前言在互联网时代,数据安全与个人隐私受到了前所未有的挑战,各种新奇的攻击技术层出不穷。如何才能更好地保护我们的数据?本文主要侧重于分析几种常见的攻击的类型以及防御的方法。一、XSSXSS (Cross-Site Scripting),跨站脚本攻击,因为缩写和 CSS重叠,所以只能叫 XSS。跨站脚本攻击是指通过存在安全漏洞的Web网站注册用户的浏览器内运行非法的HTML标签或JavaScript进行的一种攻击。跨站脚本攻击有可能造成以下影响:利用虚假输入表单骗取用户个人信息。利用脚本.

2020-06-08 11:09:22 285

转载 文件分片上传【前端】

https://blog.csdn.net/s525498285/article/details/101760338

2020-06-05 19:47:42 204

转载 文件上传之断点续传和跨端续传

我们要上传一个1G+的大文件,前端采用分片上传,但是由于某种原因比如要下班了,断电了或是网线被拔掉了,上传被迫中断。那么别急,我们有断点续传功能,你可以将大文件带回家慢慢从中断处继续上传,而不需要重新上传整个文件。为了阅读和开发方便,我将文件上传系列相关文章章节列出来,建议从01节开始看起,文章内容按顺序紧紧相连:01.使用vue-simple-uploader上传文件和文件夹 02.文件分片上传之前端文件分片 03.文件分片上传之后端PHP合并文件 04.超大文件上传之计算文件MD5值 0

2020-06-04 19:55:00 1242

转载 React中的受控组件和非受控组件学习总结

故事:Form表单是前端开发过程中经常使用的功能, 在使用react 表单时,都会遇到受控组件或者非受控组件。当我听到这两个关键词的时候确实有点懵逼,不知道啥意思,因此记录下来,作为自己的学习目标受控组件(React官方推荐使用受控组件)在React中,每当表单的状态发生变化时,都会被写入到组件的state中,这种组件在React被称为受控组件import React, {PureComponent} from "react"import {PropTypes} from 'prop-ty

2020-06-04 19:24:50 224

转载 React的受控组件和非受控组件

受控组件什么是受控组件?其值由React控制的输入表单元素称为“受控组件”。受控组件有两个特点:1. 设置value值,value由state控制,2. value值一般在onChange事件中通过setState进行修改什么时候使用受控组件?需要对组件的value值进行修改时,使用受控组件。比如:页面中有一个按钮,每点击一次按钮受控组件的值加1.非受控组件什么是非受控组件?表单数据由 DOM 处理的组件非受控组件。非受控组件有两个特点:1. 不设置value值,2. 通过r.

2020-06-04 19:15:47 143

转载 ES6(Module模块化)

模块化ES6的模块化的基本规则或特点:1:每一个模块只加载一次, 每一个JS只执行一次, 如果下次再去加载同目录下同文件,直接从内存中读取。 一个模块就是一个单例,或者说就是一个对象;2:每一个模块内声明的变量都是局部变量, 不会污染全局作用域;3:模块内部的变量或者函数可以通过export导出;4:一个模块可以导入别的模块一、导入和导出1.导出导入:结果:2.只取需要的结果:3.导出数目太多时(无需一一对应)* 代表全部内容.

2020-06-04 18:04:33 131

转载 ES6---Module的加载实现

浏览器加载传统方法:在html网页中,浏览器通过<script>标签加载js脚本。<!-- 页面内嵌的脚本 --><script type="application/javascript"> // module code</script><!-- 外部脚本 --><script type="application/javascript" src="path/to/myModule.js"></script&

2020-06-04 18:03:31 430

转载 ES6系列之Generator

一、什么是Generator 函数1.1 语法学习Generator语法,你需要了解function*、yield、next三个基本概念。· function*用来声明一个函数是生成器函数,它比普通的函数声明多了一个*,*的位置比较随意可以挨着function关键字,也可以挨着函数名·yield产出的意思,这个关键字只能出现在生成器函数体内,但是生成器中也可以没有yield关键字,函数遇到yield的时候会暂停,并把yield后面的表达式结果抛出去·next作...

2020-06-04 15:58:37 146

转载 ES6之Reflect你确定不需要了解?

什么是Reflect?ES6 为了操作对象而提供的新API,未来的新方法将只部署在Reflect对象上!初探ReflectReflect与Proxy是相辅相成的,只要是Proxy对象的方法,就能在Reflect对象上找到对应的方法!const obj = { name: "song" };const proxy = new Proxy(obj, { get(target, name) { // reflect保证原生行为能够正常执行 return Reflect.ge

2020-06-04 15:33:09 431

转载 JavaScriptES6对象的Object.key, Object.values, Object.entries

https://blog.csdn.net/c__dreamer/article/details/81627974

2020-06-04 14:58:25 171

转载 javascript ES6 Proxy

proxy的概念proxy英文原意是代理的意思,在ES6中,可以翻译为"代理器"。 它主要用于改变某些操作的默认行为,等同于在语言层面做出修改,所以属于一种“元编程”(meta programming),即对编程语言进行编程。proxy在目标对象的外层搭建了一层拦截,外界对目标对象的某些操作(后文会说明,有哪些操作可以拦截),必须通过这层拦截。语法var proxy = new Proxy(target, handler);通过构造函数生成proxy,target参数是要拦截

2020-06-04 14:51:44 223

转载 ES6的 Iterator 遍历器到底是什么?(清晰)

这节课要讲的是ES6中的Iterator.for...of为啥不遍历Object对象第十三节我们讲了简单又实用的for...of,我们可以使用它来遍历数组,字符串,Set和Map结构,但是有没有发现,我们并没有说它可以遍历Object对象,为什么不试试用它来遍历Object对象呢?我们试试看://定义一个的Object对象let obj = {"name":"前端君"};//咱们来for...of一下 for(let v of obj){console.log(v);

2020-06-04 10:46:54 171

转载 HTTP 权威指南 详解 (推荐阅读 )

HTTP 权威指南 详解 ( 一、概述 )最近在解读 《http权威指南》 这本书。之前对于http 的理解仅限于 知道我需要向服务端发送一个 get or post 请求,然后等待服务器 返回给我数据,我再进行下一步的操作,可能作为一名 前端er 会经常这么干吧,但是 我们每天都要用到的 http 请求 到底是一个怎么样的黑盒子呢? 今天刚好有时间,咱们就一起来 探索这部分的未解之谜。tips同样,我们在阅读一本书的时候,特别是 技术类的书的时候,我们希望能够带着问题来阅读,那样就会不断

2020-06-03 19:56:32 2704

转载 JS的 try catch 前端使用场景(尽管不多还是会用到)

try{//正常执行}catch(e/*你感觉会出错的 错误类型*/){// 可能出现的意外 eg:用户自己操作失误 或者 函数少条件 不影响下面的函数执行// 有时也会用在 比如 focus() 但可恶的ie有可能会第一次没有focus事件 再让他执行一次// 有时一些不是bug的bug 在ie上 他要求必须加上 catch 哪怕就一个空catch 以前在ie8上遇到过这个操蛋的js问题}    try catch的使用,永远应该放在你的控制范围之内,而不应该防范未知的错误。也就是说你很清...

2020-06-03 17:46:10 3492

symbian 视频播放源码

symbian的视频播放源码,有兴趣的可以下载。

2008-09-11

空空如也

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

TA关注的人

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