- 博客(106)
- 收藏
- 关注
转载 koa2源码解读
原文链接:https://www.cnblogs.com/chenjinxinlove/p/7040704.htmlkoa的github地址:https://github.com/koajs/koa.gitKoa2的安装和简单使用需要 nodev7.6.0 或者更高的版本,为了支持 ES2015 and async安装npm install koaHello koaconst Koa = requ...
2018-04-09 09:50:24
357
转载 nodejs异步流程控制co 模块
万恶的回调 对前端工程师来说,异步回调是再熟悉不过了,浏览器中的各种交互逻辑都是通过事件回调实现的,前端逻辑越来越复杂,导致回调函数越来越多,同时 nodejs 的流行也让 javascript 在后端的复杂场景中得到应用,在 nodejs 代码中更是经常看到层层嵌套。以下是一个典型的异步场景:先通过异步请求获取页面数据,然后根据页面数据请求用户信息,最后根据用户信息请求用户的产品列表。过多的回调...
2018-04-02 20:14:03
445
转载 SOCKET.IO简易API
原文:http://www.cnblogs.com/xiezhengcai/p/3956401.html 1. 服务端io.on('connection',function(socket));监听客户端连接,回调函数会传递本次连接的socketio.sockets.emit('String',data);给所有客户端广播消息io.sockets.socket(socketid).emit('Str...
2018-03-21 19:29:50
289
转载 项目中使用过的lodash方法总结
_.findWhere对集合中的每个元素和源进行深度比较。该方法支持比较数组、布尔值、数字、日期对象,对象的对象,正则表达式、字符串。Ex:var users = [ { 'user': 'barney', 'age': 36, 'active': true }, { 'user': 'fred', 'age': 40, 'active': false }];_.result(_.find...
2018-03-02 09:23:08
2064
1
转载 React Router 4 简易入门
原文React Router4是一个流行的纯React重写的包。现在的版本中已不需要路由配置,现在一切皆组件。本文涵盖了开始使用React Router构建网站所需要的一切知识。我们将会为本地运动队制作一个网站。代码想看网站最终效果,查看demo点击预览安装React Router被拆分成三个包:react-router,react-router-dom和react-router-native。r...
2018-02-26 10:05:13
522
转载 linux下vim和cat命令详解
学习hadoop过程中最经常的是使用到linux下的vim命令,现整理如下:一、vim命令:1.标签命令:tabe fn 在一个新的标签页中编辑文件fngt 切换到下一个标签页gT 切换到上一个标签页:tabr 切换到第一个标签页:tabl 切换到最后一个标签页:tabm [N] 把当前tab移动到第N个tab之后对,正如你所想象的那样,跟eclip...
2018-02-11 16:55:41
940
转载 【分享】html5 开发工具——WeX5中的各种绑定方式
今天我想整理一下html5 开发工具——WeX5中的各种绑定方式,下面分为表现类、流程类、交互类 3 种类型分别介绍。表现类绑定表现类的绑定属性有visible、text、html、css、style、attr几种,除了css表示css的class之外,其他都是字面意思。示范用法:布局中加入一个div标签和一个按钮,并设置div标签的绑定属性如下右所示。
2018-01-03 09:26:25
749
转载 一份react-native面试题
1、下面打印出b的值是?if(true){let b = 2} alert(b). let不存在变量提升,且作用域只在代码块,输出undefined2、const name = 'jack'; const age = 20; const person = {[name] : true, [age] : true}. person对象的两个key分别是什么对象的key只能
2017-12-21 00:53:10
7996
转载 React 常用面试题目与分析
1.调用 setState 之后发生了什么?在代码中调用setState函数之后,React 会将传入的参数对象与组件当前的状态合并,然后触发所谓的调和过程(Reconciliation)。经过调和过程,React 会以相对高效的方式根据新的状态构建 React 元素树并且着手重新渲染整个UI界面。在 React 得到元素树之后,React 会自动计算出新的树与老树的节点差异,然后根据差异对界
2017-12-21 00:51:51
302
转载 你必须知道的25道JavaScript核心面试题
你应该知道的25道Javascript面试题题目来自 25 Essential JavaScript Interview Questions。闲来无事,正好切一下。一What is a potential pitfall with using typeof bar === "object" to determine if bar is an object?
2017-12-21 00:50:25
1344
原创 原生js简单实现jQuery的动画效果
// 动画效果function startMove(obj,json,time,fn){ clearInterval(obj.timer); var flag= true; obj.timer= setInterval(function(){ for(vari in json){ // 1.取当前值
2017-12-19 20:19:09
546
转载 2017年前端面试题整理汇总100题
1.一些开放性题目1.自我介绍:除了基本个人信息以外,面试官更想听的是你与众不同的地方和你的优势。2.项目介绍3.如何看待前端开发?4.平时是如何学习前端开发的?5.未来三到五年的规划是怎样的?position的值, relative和absolute分别是相对于谁进行定位的?absolute :生成绝对定位的元素, 相对于最近一级的 定位
2017-12-19 00:49:52
1008
转载 React 虚拟dom是如何实现的
JSX是比较简单的:花一分钟时间阅读本篇文章,你将会理解有关模板的有趣替代方案的所有内容。替代标题:和JSX在一起指令你可以声明每个文件或每个函数来告诉你的转换器(如:Babel)每个节点在运行时应该调用的函数名称(参见:Transpilation)/** @jsx h **/ 转换如果你还没有使用转换器,对,你可能就是。使用ES6/ES201
2017-12-08 01:25:37
759
原创 Object.prototype.toString.call(obj)检测对象类型?
用 typeof 是否能准确判断一个对象变量,答案是否定的,null 的结果也是 object,Array 的结果也是 object,有时候我们需要的是 "纯粹" 的 object 对象。如何避免呢?比较好的方式是:console.log(Object.prototype.toString.call(obj) === "[object Object]");使用以上方式可以很好的
2017-12-03 21:46:50
341
转载 javascript中new关键字详解
javascript中new关键字详解和其他高级语言一样 javascript 中也有 new 运算符,我们知道 new 运算符是用来实例化一个类,从而在内存中分配一个实例对象。 但在 javascript 中,万物皆对象,为什么还要通过 new 来产生对象? 本文将带你一起来探索 javascript 中 new 的奥秘...一、认识new运算符:function Ani
2017-12-02 01:46:43
280
转载 HTTP强缓存和协商缓存
浏览器缓存浏览器缓存是浏览器在本地磁盘对用户最近请求过的文档进行存储,当访问者再次访问同一页面时,浏览器就可以直接从本地磁盘加载文档。所以根据上面的特点,浏览器缓存有下面的优点:减少冗余的数据传输减少服务器负担加快客户端加载网页的速度浏览器缓存是Web性能优化的重要方式。那么浏览器缓存的过程究竟是怎么样的呢?在浏览器第一次发起请求时,
2017-12-01 03:35:44
1199
转载 http协商缓存VS强缓存
之前一直对浏览器缓存只能描述一个大概,深层次的原理不能描述上来;终于在前端的两次面试过程中被问倒下,为了泄恨,查阅一些资料最终对其有了一个更深入的理解,废话不多说,赶紧来看看浏览器缓存的那些事吧,有不对的地方,请各位不吝赐教啊。 本文主要讲解浏览器端的缓存,缓存的作用是不言而喻的,能够极大的改善网页性能,提高用户体验。1、浏览器缓存缓存这东西,第一次必须获取到资源后,然后根据返回的信息
2017-12-01 02:57:32
356
转载 Javascript 异步加载详解
本文总结一下浏览器在 javascript 的加载方式。关键词:异步加载(async loading),延迟加载(lazy loading),延迟执行(lazy execution),async 属性, defer 属性一、同步加载与异步加载的形式1. 同步加载我们平时最常使用的就是这种同步加载形式:script src="http://your
2017-12-01 02:14:59
216
转载 JavaScript异步加载
同步加载的问题 默认的js是同步加载的,这里的“加载”可以理解成是解析、执行,而不是“下载”,在最新版本的浏览器中,浏览器对于代码请求的资源都是瀑布式的加载,而不是阻塞式的,但是js的执行总是阻塞的。这会引起什么问题呢?如果我的index页面要加载一些js,但是其中的某个请求迟迟得不到响应,于是阻塞了后面的js代码的执行(同步加载),同时页面渲染也不能继续(如果js引入是在head标签后
2017-11-30 23:33:03
1463
转载 前端性能优化 —— reflow(回流)和repaint(重绘)
简要:整个在浏览器的渲染过程中(页面初始化,用户行为改变界面样式,动画改变界面样式等)reflow(回流)和repaint(重绘) 会大大影响web性能,尤其是手机页面。因此我们在页面设计的时候要尽量减少reflow和repaint。什么是reflow和repaint(原文链接:http://www.cnblogs.com/Peng2014/p/4687218.html)reflo
2017-11-30 21:23:13
438
原创 浅谈javascript中的constructor属性。
我认为只有对象的__proto__属性才具有constructor属性。对象本身没有constructor属性,然后去它的__proto__属性中寻找constructor属性。1234567891011121314151617
2017-11-30 00:38:22
190
原创 用 Object.create实现类式继承
下面的例子演示了如何使用Object.create()来实现类式继承。这是一个所有版本JavaScript都支持的单继承。// Shape - superclassfunction Shape() { this.x = 0; this.y = 0;}// superclass methodShape.prototype.move = function(x, y) { th
2017-11-29 23:58:00
361
转载 HTTP协议详解
引言HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展。目前在WWW中使用的是HTTP/1.0的第六版,HTTP/1.1的规范化工作正在进行之中,而且HTTP-NG(Next Generation of HTTP)的建议已经提出。HTTP协议的主要特点可概括如下:1.支
2017-11-29 03:10:40
150
原创 javascript中stopImmediatePropagation函数和stopPropagation函数的区别
在事件处理程序中,每个事件处理程序中间都会有一个event对象,而这个event对象有两个方法,一个是stopPropagation方法,一个是stopImmediatePropagation方法,两个方法只差一个Immediate,这里就说说这两个方法的区别 1、stopImmediatePropagation方法: stopImmediatePropagation方法作
2017-11-28 01:01:48
178
转载 前端精选文摘:BFC 神奇背后的原理
BFC 已经是一个耳听熟闻的词语了,网上有许多关于 BFC 的文章,介绍了如何触发 BFC 以及 BFC 的一些用处(如清浮动,防止 margin 重叠等)。虽然我知道如何利用 BFC 解决这些问题,但当别人问我 BFC 是什么,我还是不能很有底气地解释清楚。于是这两天仔细阅读了CSS2.1 spec 和许多文章来全面地理解BFC。一、BFC是什么? 在解释 BFC 是什么之前,需要
2017-11-27 19:30:00
129
转载 代码即逻辑 -- 聊聊 Effects 及在 Angular 中的应用
大概去年9月左右,看过 Cycle.js 创作者 André Staltz 的一个视频:讲为什么 React 并不是一个响应式的框架,同时介绍了 Cycle.js。当时就觉得这个思路好牛叉,但一直有点似懂非懂。最近由于工作需要,在 Angular 中使用了@ngrx/effects (这个是借鉴了 Cycle.js 的思路,把这种思路应用在 Angular 中),对这个模式有了些粗
2017-11-22 23:34:58
728
1
转载 [译]Angular2新人常犯的5个错误
看到这儿,我猜你肯定已经看过一些博客、技术大会录像了,现在应该已经准备好踏上angular2这条不归路了吧!那么上路后,哪些东西是我们需要知道的?下面就是一些新手常见错误汇总,当你要开始自己的angular2旅程时,尽量避免吧。注:本文中,我假设诸位已经对angular2的基础知识有所了解。如果你是绝对新手,之前只听说过,完全没概念什么是angular2的,先去读读下面这些资料:
2017-11-01 23:28:58
725
转载 Angular开发-关于组件之间的数据交互
在angular组件中数据交互主要有下面几种1、父组件通过属性绑定到子组件,子组件通过事件传递参数到父组件2、父组件通过局部变量获取子组件的引用3、父组件使用@ViewChild获取子组件的引用4、两个不相关联的组件使用中间人模式交互5、终极大招:创建一个服务注入到组件中6、直接把父组件当做服务注入到子组件中一、通过输入与输出属性进行传递进行组件之间数据交互//父组件htm
2017-11-01 23:27:23
1093
转载 TypeScript 基本语法
TypeScript 是微软开发的 JavaScript 的超集,TypeScript兼容JavaScript,可以载入JavaScript代码然后运行。TypeScript与JavaScript相比进步的地方 包括:加入注释,让编译器理解所支持的对象和函数,编译器会移除注释,不会增加开销;增加一个完整的类结构,使之更新是传统的面向对象语言。TypeScript 微软官方网站 ht
2017-10-29 16:39:01
235
转载 ES6---扩展运算符和rest‘...’(三点运算符),在数组、函数、set/map等中的应用
ES6新增的三点运算符,是由三个点表示,在数组中扮演着重要的角色,可以对数组进行合并与分解、可以对set等数据结构进行转换、可以对函数参数进行简化表示,接下来,我们一起揭开其神秘面纱…●三点—rest参数:let fun1=function(...args){ for(let arg of args){ console
2017-10-24 18:04:10
412
转载 windows 64位下,React-Native环境搭建详解 (Android)
React-Native环境搭建需要: 1、安装Java JDK 2、安装Android Studio 3、安装node.js 4、安装git 5、安装Python 2.x (注意目前不支持Python 3版本) 6、安装react-native-cli 7、测试环境是否搭建好附:React-Native中文网环境搭建链接 https://reactnative
2017-10-13 16:28:46
620
转载 我的前端进阶之路(面试题)
前言总括: 包含这三个月来碰到的一些觉得比较好的面试题,三个月没怎么写博客着实有些手痒,哈哈哈。7000余字,不成敬意2333原文地址:我的前端进阶之路知乎专栏&&简书专题:前端进击者(知乎)&&前端进击者(简书)博主博客地址:Damonare的个人博客烈火试真金,逆境试强者正文React和Vue对比相同点:数据驱动视
2017-10-13 11:35:56
614
转载 理解 React,但不理解 Redux,该如何通俗易懂的理解 Redux?
作者:Wang Namelos链接:https://www.zhihu.com/question/41312576/answer/90782136来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。解答这个问题并不困难:唯一的要求是你熟悉React。不要光听别人描述名词,理解起来是很困难的。从需求出发,看看使用React需要什么:1.
2017-10-10 21:40:32
278
转载 Dangerously Set innerHTML
Dangerously Set innerHTML不合时宜的使用 innerHTML 可能会导致 导致网页攻击 的原因之一。我们的设计哲学是让确保安全应该是简单的,开发者在执行“不安全”的操作的时候应该清楚地知道他们自己的意图。 dangerouslySetInnerHTML 这个 prop 的命名是故意这么设计的,以此来警告,它的 prop 值( 一个对象而不是字符串 )应该
2017-10-09 01:35:12
705
原创 es6 中类与对象的一些心得
关于class a extends b{}a会继承b中所有的属性与方法;a中定义的属性可以在b中使用,例如:class a extends b{ constructor(){ this.name='aaaaa'; }}class b{ constrctor(){ this.age=18; } f()
2017-09-27 14:45:46
715
转载 javascript 中关于call方法的详解。
关于javascript中的call方法,网上查了一些资料总是不得详解。总结网上的观点,call有两个妙用: 1: 继承。(不太喜欢这种继承方式。) 2: 修改函数运行时的this指针。 js中关于call的解释如下:
2017-09-26 16:55:14
243
转载 理解 JS 回调函数中的 this
理解 JS 回调函数中的 this任何变量或对象都有其赖以生存的上下文。如果简单地将对象理解为一段代码,那么对象处在不同的上下文,这段代码也会执行出不同的结果。例如,我们定义一个函数 getUrl 和一个对象 pseudoWindow。function getUrl() { console.log(this.document.URL);}var p
2017-09-26 16:29:22
976
转载 JavaScript 中 apply 、call 的详解
apply 和 call 的区别ECMAScript 规范给所有函数都定义了 call 与 apply 两个方法,它们的应用非常广泛,它们的作用也是一模一样,只是传参的形式有区别而已。apply( )apply 方法传入两个参数:一个是作为函数上下文的对象,另外一个是作为函数参数所组成的数组。var obj = { name : 'linxin'}func
2017-09-26 00:50:33
164
转载 Javascript/ES6代理Proxy用法
在ES6中,Proxy构造器是一种可访问的全局对象,使用它,你可以在对象与各种操作对象的行为之间收集有关请求操作的各种信息,并返回任何你想做的。在这点上,代理Proxy与中间件有很多共同点。也就是说,代理Proxy会代理你要操作的对象,那为什么要代理原对象呢?Proxy代理能够让你截取原对象的各种操作方法,最普通的是get set apply和construct等方法,看这个规定有很多被拦
2017-09-23 12:45:22
1560
转载 入门 Webpack,看这篇就够了
2017年8月13日更新,本文依据webpack3.5.3将文章涉及代码完全重写,所有代码都在Mac上正常运行过。希望依旧对你学习webpack有帮助。2017年8月16号更新:最近在Gitchat上将发起了一场关于webpack的分享,目的在于一起花最短的时间理解和学会webpack,感兴趣的童鞋可以微信扫描注册哈。写在前面的话阅读本文之前,先看下面这个web
2017-09-19 15:39:46
533
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人