自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(44)
  • 资源 (34)
  • 问答 (3)
  • 收藏
  • 关注

转载 Vue 2.0 的 virtual-dom 实现简析

Vue版本: 2.3.2virtual-dom(后文简称vdom)的概念大规模的推广还是得益于react出现,virtual-dom也是react这个框架的非常重要的特性之一。相比于频繁的手动去操作dom而带来性能问题,vdom很好的将dom做了一层映射关系,进而将在我们本需要直接进行dom的一系列操作,映射到了操作vdom,而vdom上定义了关于真实dom的一些关键的信息,vdom完全是

2017-10-31 16:52:12 565

转载 前端面试中的常见的算法问题

虽说我们很多时候前端很少有机会接触到算法。大多都交互性的操作,然而从各大公司面试来看,算法依旧是考察的一方面。实际上学习数据结构与算法对于工程师去理解和分析问题都是有帮助的。如果将来当我们面对较为复杂的问题,这些基础知识的积累可以帮助我们更好的优化解决思路。下面罗列在前端面试中经常撞见的几个问题吧。Q1 判断一个单词是否是回文?回文是指把相同的词汇或句子,在下文中调换位置或颠倒

2017-10-31 16:50:19 1029

转载 jQuery返回顶部插件-toTop

简介jQuery.toTop 是一款轻量级的 jQuery 返回顶部插件,压缩后不到 1KB。同时它也是可定制的,你可以设置是否自动隐藏、滚动时间、位置等等。在线演示及下载在线演示本地下载使用方法引入文件scriptsrc="jsjquery.min.js">script>scriptsrc="

2017-10-31 16:49:27 2447

转载 延迟加载(Lazyload)三种实现方式

定义:延迟加载也称为惰性加载,即在长网页中延迟加载图像。用户滚动到它们之前,视口外的图像不会加载。这与图像预加载相反,在长网页上使用延迟加载将使网页加载更快。在某些情况下,它还可以帮助减少服务器负载。举个例子来说明,当打开淘宝首页的时候,只有在浏览器窗口里的图片才会被加载,当你滚动首页向下滑的时候,进入视口内的图片才会被加载,而其它从未进入视口的图像不会也不会加载。那么延迟加载有什么好

2017-10-31 16:47:45 2046

转载 编写现代CSS代码的建议

本文翻译自Danny Markov 的20-Tips-For-Writing-Modern-CSS一文。本文归纳于笔者的Web 前端入门与最佳实践中CSS入门与最佳实践系列,其他的关于CSS样式指南的还有提升你的CSS姿势、Facebook里是怎样提升CSS代码质量的。本文更偏向于样式使用技巧,前两篇偏向于代码风格与规范。明白何谓Margin Collaps

2017-10-31 16:45:52 380

转载 vue-cli#2.0 webpack 配置分析

前言作为 Vue 的使用者我们对于 vue-cli 都很熟悉,但是对它的 webpack 配置我们可能关注甚少,今天我们为大家带来 vue-cli#2.0 的 webpack 配置分析vue-cli 的简介、安装我们不在这里赘述,对它还不熟悉的同学可以直接访问 vue-cli 查看目录结构.├── README.md├

2017-10-31 16:44:35 306

转载 Vue.js异步更新DOM策略及nextTick

操作DOM在使用vue.js的时候,有时候因为一些特定的业务场景,不得不去操作DOM,比如这样:      <div ref="test">{{test}}    <button @click="handleClick">tet  exportdefault{    data

2017-10-31 16:42:54 1098

转载 BetterScroll:在移动端滚动场景的应用

BetterScroll 是一款重点解决移动端各种滚动场景需求的开源插件(GitHub地址),适用于滚动列表、选择器、轮播图、索引列表、开屏引导等应用场景。为了满足这些场景,它不仅支持惯性滚动、边界回弹、滚动条淡入淡出等效果的灵活配置,让滚动更加流畅,同时还提供了很多 API 方法和事件,以便我们更快地实现滚动场景下的需求,如下拉刷新、上拉加载。由于它基于原生 JavaScript

2017-10-31 16:41:19 2554

转载 举例说明了十大ES6功能

翻译自Top 10 ES6 features by example虽然ES6规范不是最近才发布,但我认为很多开发人员仍然不太熟悉。 主要原因是在规范发布之后,Web浏览器的支持可能很差。 目前,规范发布已经超过2年了,现在很多浏览器对ES6支持良好。 即使您(或您的客户)不使用最新版本的Web浏览器,也可以使用转换器(如Babel),在应用程序的构建过程中将ES6转换为ES5。 这

2017-10-31 16:38:34 362

转载 企业级前端组件库方案

组件库是前端大规模开发中提升效率的重要一环,同时也是可视化页面搭建、自动化测试等上层建筑的基石。因此设计时要考虑的问题涵盖面非常广。要设计好非常难,但是设计好之后从上层建筑带来的回报会超过你的想象。这篇文章中我们先一起来关注和探讨组件库要解决的问题,最后会推导出一套足够灵活——适用于大团队或社区使用,又足够强大——能支撑起上层建筑的组件库方案。也请读者注意,结论其实很简单,文中思考过程才是

2017-10-31 16:36:15 1774

转载 Javascript模块化编程(三):require.js的用法

作者: 阮一峰这个系列的第一部分和第二部分,介绍了Javascript模块原型和理论概念,今天介绍如何将它们用于实战。我采用的是一个非常流行的库require.js。一、为什么要用require.js?最早的时候,所有Javascript代码都写在一个文件里面,只要加载这一个文件就够了。后来,代码越来越多,一个文件不够了,必须分成多个文件,依次加载。

2017-10-30 14:00:56 146

转载 Javascript模块化编程(二):AMD规范

作者: 阮一峰这个系列的第一部分介绍了Javascript模块的基本写法,今天介绍如何规范地使用模块。(接上文)七、模块的规范先想一想,为什么模块很重要?因为有了模块,我们就可以更方便地使用别人的代码,想要什么功能,就加载什么模块。但是,这样做有一个前提,那就是大家必须以同样的方式编写模块,否则你有你的写法,我有我的写法,岂不是乱了套

2017-10-30 14:00:08 135

转载 Javascript模块化编程(一):模块的写法

作者: 阮一峰网页越来越像桌面程序,需要一个团队分工协作、进度管理、单元测试等等......开发者不得不使用软件工程的方法,管理网页的业务逻辑。Javascript模块化编程,已经成为一个迫切的需求。理想情况下,开发者只需要实现核心的业务逻辑,其他都可以加载别人已经写好的模块。但是,Javascript不是一种模块化编程语言,它不支持"类"(class),更遑论"模块"

2017-10-30 13:55:24 158

转载 强类型 JavaScript 的解决方案

作者: 阮一峰JavaScript 是一种弱类型(或称动态类型)语言,即变量的类型是不确定的。x = 5; // 5x = x + 'A'; // '5A'上面代码中,变量x起先是一个数值,后来是一个字符串,类型完全由当前的值决定,这就叫弱类型。弱类型的好处是十分灵活,可以写出非常简洁的代码。但是,对于大型项目来说,强类型更有利,可以降低系统的复杂

2017-10-30 13:52:42 301

转载 async 函数的含义和用法

作者: 阮一峰本文是《深入掌握 ECMAScript 6 异步编程》系列文章的最后一篇。Generator函数的含义与用法Thunk函数的含义与用法co函数库的含义与用法async函数的含义与用法一、终极解决异步操作是 JavaScript 编程的麻烦事,麻烦到一直有人提出各种各样的方案,试图解决这个问题。从最早的回调

2017-10-30 13:51:06 1271

转载 require() 源码解读

require() 源码解读作者: 阮一峰2009年,Node.js 项目诞生,所有模块一律为 CommonJS 格式。时至今日,Node.js 的模块仓库 npmjs.com ,已经存放了15万个模块,其中绝大部分都是 CommonJS 格式。这种格式的核心就是 require 语句,模块通过它加载。学习 Node.js ,

2017-10-30 13:49:08 214

转载 浏览器加载 CommonJS 模块的原理与实现

作者: 阮一峰就在这个周末,npm 超过了 cpan ,成为地球上最大的软件模块仓库。npm 的模块都是 JavaScript 语言写的,但浏览器用不了,因为不支持 CommonJS 格式。要想让浏览器用上这些模块,必须转换格式。本文介绍浏览器加载 CommonJS 的原理,并且给出一种非常简单的实现。一、原理浏览器不兼容CommonJS的根

2017-10-30 13:33:14 601 1

转载 Node.js 命令行程序开发教程

作者: 阮一峰一种编程语言是否易用,很大程度上,取决于开发命令行程序的能力。Node.js 作为目前最热门的开发工具之一,怎样使用它开发命令行程序,是 Web 开发者应该掌握的技能。最近,Npm的网志有一组系列文章,我觉得写得非常好。下面就是我在它的基础上扩展的教程,应该是目前最好的解决方案了。一、可执行脚本我们从最简单的讲起。首先,

2017-10-30 13:31:35 338

转载 读懂 ECMAScript 规格

作者: 阮一峰一、概述规格文件(specification)是计算机语言的官方标准,详细描述语法规则和实现方法。一般来说,没有必要阅读规格,除非你要写编译器。因为规格写得非常抽象和精炼,又缺乏实例,不容易理解,而且对于解决实际的应用问题,帮助不大。但是,如果你遇到疑难的语法问题,实在找不到答案,这时可以去查看规格文件,了解语言标准是怎么说的。规格是解决问题的

2017-10-30 13:30:19 266

转载 Flux 架构入门教程

作者: 阮一峰过去一年中,前端技术大发展,最耀眼的明星就是React。React 本身只涉及UI层,如果搭建大型应用,必须搭配一个前端框架。也就是说,你至少要学两样东西,才能基本满足需要:React + 前端框架。Facebook官方使用的是 Flux 框架。本文就介绍如何在 React 的基础上,使用 Flux 组织代码和安排内部逻辑,使得你的应用更易于开发和维护

2017-10-30 13:28:37 205

转载 跨域资源共享 CORS 详解

作者: 阮一峰CORS是一个W3C标准,全称是"跨域资源共享"(Cross-origin resource sharing)。它允许浏览器向跨源服务器,发出XMLHttpRequest请求,从而克服了AJAX只能同源使用的限制。一、简介CORS需要浏览器和服务器同时支持。目前,所有浏览器都支持该功能,IE浏览器不能低于IE10。整个COR

2017-10-30 13:19:52 160

转载 浏览器加载 CommonJS 模块的原理与实现

作者: 阮一峰日期: 2015年5月23日就在这个周末,npm 超过了 cpan ,成为地球上最大的软件模块仓库。npm 的模块都是 JavaScript 语言写的,但浏览器用不了,因为不支持 CommonJS 格式。要想让浏览器用上这些模块,必须转换格式。本文介绍浏览器加载 CommonJS 的原理,并且给出一种非常简单的实现。一、原理

2017-10-26 11:02:36 802

转载 网页性能管理详解

作者: 阮一峰日期: 2015年9月17日你遇到过性能很差的网页吗?这种网页响应非常缓慢,占用大量的CPU和内存,浏览起来常常有卡顿,页面的动画效果也不流畅。你会有什么反应?我猜想,大多数用户会关闭这个页面,改为访问其他网站。作为一个开发者,肯定不愿意看到这种情况,那么怎样才能提高性能呢?本文将详细介绍性能问题的出现原因,以及解决方法。一

2017-10-26 10:51:06 147

转载 Flex 布局教程:语法篇 作者: 阮一峰

Flex 布局教程:语法篇网页布局(layout)是 CSS 的一个重点应用。布局的传统解决方案,基于盒状模型,依赖 display 属性 + position属性 + float属性。它对于那些特殊布局非常不方便,比如,垂直居中就不容易实现。2009年,W3C 提出了一种新的方案----Flex 布局,可以简便、完整、响应式

2017-10-20 09:47:14 611

转载 QD价值体现?

为简化用户使用提供技术支持(交互部分)为多个浏览器兼容性提供支持为提高用户浏览速度(浏览器性能)提供支持为跨平台或者其他基于webkit或其他渲染引擎的应用提供支持为展示数据提供支持(数据接口) ​​​​

2017-10-18 09:51:30 113

转载 性能优化问题?

代码层面:避免使用css表达式,避免使用高级选择器,通配选择器。缓存利用:缓存Ajax,使用CDN,使用外部js和css文件以便缓存,添加Expires头,服务端配置Etag,减少DNS查找等请求数量:合并样式和脚本,使用css图片精灵,初始首屏之外的图片资源按需加载,静态资源延迟加载。请求带宽:压缩文件,开启GZIP,代码层面的优化用hash-table来优化查找少用全局

2017-10-18 09:49:58 211

转载 移动端性能优化?

尽量使用css3动画,开启硬件加速。适当使用touch事件代替click事件。避免使用css3渐变阴影效果。可以用transform: translateZ(0)来开启硬件加速。不滥用Float。Float在渲染时计算量比较大,尽量减少使用不滥用Web字体。Web字体需要下载,解析,重绘当前页面,尽量减少使用。合理使用requestAnimationFrame动画代替set

2017-10-18 09:48:21 239

转载 Expires和Cache-Control?

Expires要求客户端和服务端的时钟严格同步。HTTP1.1引入Cache-Control来克服Expires头的限制。如果max-age和Expires同时出现,则max-age有更高的优先级。    Cache-Control: no-cache, private, max-age=0    ETag: abcde    Expires: Thu, 15 Apr 2014 20:

2017-10-18 09:47:24 1046

转载 ETag应用?

Etag由服务器端生成,客户端通过If-Match或者说If-None-Match这个条件判断请求来验证资源是否修改。常见的是使用If-None-Match。请求一个文件的流程可能如下:====第一次请求===1.客户端发起 HTTP GET 请求一个文件;2.服务器处理请求,返回文件内容和一堆Header,当然包括Etag(例如"2e681a-6-5d044840")(假设服

2017-10-18 09:46:36 235

转载 快速 排序的思想并实现一个快排?

"快速排序"的思想很简单,整个排序过程只需要三步:  (1)在数据集之中,找一个基准点  (2)建立两个数组,分别存储左边和右边的数组  (3)利用递归进行下次比较            function quickSort(arr){            if(arr.length                return arr;//如果数组只有一个数,就直接返

2017-10-18 09:44:24 499

转载 jQuery或zepto源码有哪些写的好的地方?

jquery源码封装在一个匿名函数的自执行环境中,有助于防止变量的全局污染,然后通过传入window对象参数,可以使window对象作为局部变量使用,好处是当jquery中访问window对象的时候,就不用将作用域链退回到顶层作用域了,从而可以更快的访问window对象。同样,传入undefined参数,可以缩短查找undefined时的作用域链。    (function( window,

2017-10-18 09:43:18 472

转载 ES6的了解?

新增模板字符串(为JavaScript提供了简单的字符串插值功能)、箭头函数(操作符左边为输入的参数,而右边则是进行的操作以及返回的值Inputs=>outputs。)、for-of(用来遍历数据—例如数组中的值。)arguments对象可被不定参数和默认参数完美代替。ES6将promise对象纳入规范,提供了原生的Promise对象。增加了let和const命令,用来声明变量。增加了块级作用域。

2017-10-18 09:42:45 454

转载 js继承方式及其优缺点?

原型链继承的缺点一是字面量重写原型会中断关系,使用引用类型的原型,并且子类型还无法给超类型传递参数。借用构造函数(类式继承)借用构造函数虽然解决了刚才两种问题,但没有原型,则复用无从谈起。所以我们需要原型链+借用构造函数的模式,这种模式称为组合继承组合式继承组合式继承是比较常用的一种继承方法,其背后的思路是 使用原型链实现对原型属性和方法的继承,而通过借用构

2017-10-18 09:41:56 439

转载 Http2.0你知道多少?

HTTP/2引入了“服务端推(server push)”的概念,它允许服务端在客户端需要数据之前就主动地将数据发送到客户端缓存中,从而提高性能。HTTP/2提供更多的加密支持HTTP/2使用多路技术,允许多个消息在一个连接上同时交差。它增加了头压缩(header compression),因此即使非常小的请求,其请求和响应的header都只会占用很小比例的带宽。

2017-10-18 09:40:40 393

转载 渐进增强和优雅降级?

渐进增强 :针对低版本浏览器进行构建页面,保证最基本的功能,然后再针对高级浏览器进行效果、交互等改进和追加功能达到更好的用户体验。优雅降级 :一开始就构建完整的功能,然后再针对低版本浏览器进行兼容。

2017-10-14 00:31:39 339

转载 创建ajax过程?

(1)创建`XMLHttpRequest`对象,也就是创建一个异步调用对象.    (2)创建一个新的`HTTP`请求,并指定该`HTTP`请求的方法、`URL`及验证信息.    (3)设置响应`HTTP`请求状态变化的函数.    (4)发送`HTTP`请求.    (5)获取异步调用返回的数据.    (6)使用JavaScript和DOM实现局部刷新.    var

2017-10-14 00:30:37 581

转载 你对作用域链的理解?

作用域链的作用是保证执行环境里有权访问的变量和函数是有序的,作用域链的变量只能向上访问,变量访问到window对象即被终止,作用域链向下访问变量是不被允许的。

2017-10-14 00:29:52 967

转载 TCP和UDP的区别?

TCP(Transmission Control Protocol,传输控制协议)是基于连接的协议,也就是说,在正式收发数据前,必须和对方建立可靠的连接。一个TCP连接必须要经过三次“对话”才能建立起来UDP(User Data Protocol,用户数据报协议)是与TCP相对应的协议。它是面向非连接的协议,它不与对方建立连接,而是直接就把数据包发送过去! UDP适用于一次只传送少量数据、对可

2017-10-14 00:29:04 155

转载 说说TCP传输的三次握手四次挥手策略?

为了准确无误地把数据送达目标处,TCP协议采用了三次握手策略。用TCP协议把数据包送出去后,TCP不会对传送 后的情况置之不理,它一定会向对方确认是否成功送达。握手过程中使用了TCP的标志:SYN和ACK。发送端首先发送一个带SYN标志的数据包给对方。接收端收到后,回传一个带有SYN/ACK标志的数据包以示传达确认信息。 最后,发送端再回传一个带ACK标志的数据包,代表“握手”结束。 若在握手

2017-10-14 00:28:18 1163

转载 你对webpack的看法

WebPack 是一个模块打包工具,你可以使用WebPack管理你的模块依赖,并编绎输出模块们所需的静态文件。它能够很好地管理、打包Web开发中所用到的HTML、Javascript、CSS以及各种静态文件(图片、字体等),让开发过程更加高效。对于不同类型的资源,webpack有对应的模块加载器。webpack模块打包器会分析模块间的依赖关系,最后 生成了优化且合并后的静态资源。webpa

2017-10-14 00:25:59 1461

Vue多功能校验日期控件

超实用Vue日期控件组件,直接引入项目可用,省去了你一天的工作量

2023-03-21

web调用IC卡读卡器开发,通过纯js调用读卡器获取实时数据

websocket实现实时指令交互,web调用IC卡读卡器开发,通过纯js调用读卡器获取实时数据,html+css+js开发web前端,通过websoket通讯实现与读卡器等硬件设备的信息交互。

2022-07-21

前端解决方案,它基于 vue 和 element-ui实现。它使用了最新的前端技术栈,动态路由,权限验证,提炼了典型的业务模型

前端解决方案,它基于 vue 和 element-ui实现。它使用了最新的前端技术栈,动态路由,权限验证,提炼了典型的业务模型

2022-03-03

Vue面试题,React面试题,JS面试题,HTTP面试题,工程化面试题,CSS面试题,算法面试题,大厂面试题,高频面试题

Vue面试题,React面试题,JS面试题,HTTP面试题,工程化面试题,CSS面试题,算法面试题,大厂面试题,高频面试题

2021-12-01

git常用命令.txt

git常用命令最全注解

2021-11-25

经典官网-开箱即用-高端大气

经典官网-开箱即用-高端大气

2021-11-24

高端大气的官网模板-官方网站开箱即用

高端大气的官网模板-官方网站开箱即用

2021-11-24

vant-weapp-dev.zip可直接用于小程序及APP移动端

vant组件

2021-11-23

UNIAPP.doc复杂功能实现及方案总结

uniapp复杂功能实现及方案总结

2021-11-23

echarts.js源文件可以直接使用

echarts源文件可直接引用至PC或小程序

2021-11-23

RuoYi-flowable-master.zip

若依工作流版

2021-11-23

padekgcemlokbadohgkifijomclgjgif_v2.5.21.zip

chrom插件

2021-10-15

JavaScript 树形结构数组处理之递归.html

对递归深刻了解,不用看其他资料了

2021-10-14

设备网络SDK使用手册.chm

海康开发SDK

2021-07-16

petite-vue-main.zip

正版上手demo

2021-07-16

【批量下载】vue-devtools等.zip

全网正版打包VUE扩展插件,一步到位

2021-07-16

devtools-main.zip

chrome正版VUE扩展插件,超好用,全网正版

2021-07-16

aimoyer.zip

全部功能完整的电商平台APP 小程序 H5通用模板教材版

2021-07-07

uniapp-avatar-master.zip

很完整和全面的头像裁剪工具

2021-07-01

前端面试题参考答案.doc

Vue3.0还不会吗?来吧,最强面试题

2021-06-11

Vue移动端适配项目文件

超好用,移动端开发不用愁了,自适应全局

2021-06-11

Win_320885_chrome-win32.zip

Chrome稳定版,基础班

2021-04-14

浏览器集成VLC.doc

再也不怕视频流传输了

2021-04-14

CH_WEB3.0控件开发包V1.1.0_Win32&Win64_20210128144709.rar

针对海康威视监控设备,实施过程详细文档

2021-04-14

pxCook最新最全的的PS处理软件程序

PxCook(像素大厨) [1] 是一款切图设计工具软件。自2.0.0版本开始,支持PSD文件的文字,颜色,距离自动智能识别。

2020-11-19

欧陆词典在线划词翻译

欧路词典是一家在线语言学习平台,面向法语、德语、西班牙语和英语各领域为广大学习用户提供集词典、听力和翻译于一体的教育使用工具,产品包括欧路词典、每日英语听力、法语助手、德语助手以及西班牙语助手等,支持屏幕取词、划词搜索、在线翻译等功能。

2020-11-19

fetools.crx

前端设计必备网站导航。 已根据最新规则,滤除百度广告,使搜索结果界面更清爽。 1.1.0 增加一系列新网站

2020-11-19

nginx代理配置完整包

最全配置,下載即用,nginx作为web服务器一个重要的功能就是反向代理。 当然你也可以使用nginx配置正向代理,本是介绍如何配置nginx的反向代理。 nginx反向代理的指令不需要新增额外的模块,默认自带proxy_pass指令,只需要修改配置文件就可以实现反向代理。

2020-11-13

小程序canvas经典应用教材.zip

画布。2.9.0 起支持一套新 Canvas 2D 接口(需指定 type 属性),同时支持同层渲染,原有接口不再维护。相关api:获取 canvas 实例。

2020-05-09

ngx反向代理配置文件.zip

Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务,本配置文件为网站最全的 ngx 配置代理服务演示,清晰的代码结构,js流程化步骤解析,经典应用,企业级应用。

2020-05-09

全栈JavaScript新版夹娃娃

新版全栈JavaScript版本非PHP版本,新手快上路,实现原理尽在此

2017-12-18

疯狂夹娃娃

疯狂夹娃娃 新手老手快来围观,让你心动的H5微信版抓娃娃小游戏

2017-12-18

碰撞检测 JavaScript

适用于新手快速入门,掌握JavaScript核心精髓,新手少走弯路,老手绕开BUG

2017-12-18

javascript 抓娃娃小游戏H5完整版

完整线上版,多次BUG修改版本,运用技术HTML5 CSS3 JavaScript Jquery 适配安卓IOS版本移动抓娃娃小游戏

2017-12-18

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

TA关注的人

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