Node.js技巧 发表于 2016-11-12 将node.js的终端输出重定向到浏览器控制台中使用过webpack做前端的朋友大概知道, webpack有个dev-server功能, 支持在代码发生改动时自动的重启代码, 简称hot-reload. 这一特性极大地促进了开发效率, 所以下面我们通过编写代码来实现这个特性. 创建开发目录首先创建一 ... 阅读全文 »
26个精选的JavaScript面试问题 发表于 2016-10-31 在JavaScript中,在两个不同类型之间的转换叫做coercion。在JavaScript中有两种形式:显示转换和隐式转换。 下面是一个显示转换的例子: var a = "42"; var b = Number( a ); a; // "4 ... 阅读全文 »
CommonJS,AMD,CMD,ES6 发表于 2016-10-25 CommonJS,AMD,CMD,ES6 commonJS用同步的方式加载模块。在服务端,模块文件都存在本地磁盘,读取非常快,所以这样做不会有问题。但是在浏览器端,限于网络原因,更合理的方案是使用异步加载。 CMD是另一种js模块化方案,它与AMD很类似,不同点在于:AMD 推崇依赖前置、提前执行, ... 阅读全文 »
JS正则表达式Regex 发表于 2016-10-01 名余曰正则兮,字余曰灵均。 Regular Expressions翻译成中文叫正则表达式。也不知道是谁翻译过来的,听起来就很严肃。似乎翻译成通用表达式更能传达其精髓,如果你不怕梦见屈原的话。 为什么叫通用表达式?因为它有一套和编程语言无关的文本匹配规则。很多语言都实现了正则表达式的文本匹配引擎, ... 阅读全文 »
模拟实现call和apply 发表于 2016-10-01 概述JS 函数 call 和 apply 用来手动改变 this 的指向,call 和 apply 唯一的区别就在于函数参数的传递方式不同,call 是以逗号的形式,apply 是以数组的形式: let person1 = { name: "person1", ... 阅读全文 »
前端代码异常监控实战 发表于 2016-09-16 把前端监控做到极致 - 掘金线上压缩代码-定位错误 - 掘金生产环境没有source-map文件,上报的错误都不好定位,这里实现一个简单的错误定位脚本 1、获取压缩代码错误信息(行数、列数、错误信息,错误文件) 这里通过控制台看错误信息window.addEventListener('er ... 阅读全文 »
JavaScript函数柯里化 发表于 2016-08-14 什么是柯里化?官方的说法在计算机科学中,柯里化(英语:Currying),又译为卡瑞化或加里化,是把接受多个参数的函数变换成接受一个单一参数(最初函数的第一个参数)的函数,并且返回接受余下的参数而且返回结果的新函数的技术。这个技术由克里斯托弗·斯特雷奇以逻辑学家哈斯凯尔·加里命名的,尽管它是Mose ... 阅读全文 »
HTML5的Websocket 发表于 2016-08-08 先请来TA的邻居:*http:无状态、基于tcp请求/响应模式的应用层协议 (A:哎呀,上次你请我吃饭了么? B:我想想, 上次请你吃了么)tcp:面向连接、保证高可靠性(数据无丢失、数据无失序、数据无错误、数据无重复到达) 传输层协议。(看啊,大阅兵,如此规整有秩序) 为什么要引入Webs ... 阅读全文 »
移动端H5页面返回并且刷新页面 发表于 2016-07-25 项目中的需求:点击浏览器中的返回按钮,要让页面重新加载资源。因为这部分的资源每次去加载的内容都不一样,如果返回的时候,还是看到原先的内容,那做这个内容块的意义就很小了;而如果用户看完了这部分内容,再返回来的时候,这个地方换成了新的内容,这样就能体现这部分的价值了。 而对于浏览器来说,大部分浏览器的返 ... 阅读全文 »
跨域,你需要知道的全在这里 发表于 2016-05-21 最近在面试的时候常被问到如何解决跨域的问题,看了网上的一些文章后,许多文章并没有介绍清楚,经常使读者(我)感到困惑,所以今天我整理一下常用的跨域技巧,写这篇关于跨域的文章目的在于: 介绍常见的跨域的解决方案以及其优缺点 模拟实际的跨域场景,在每种方案后给出一个简单的实例,能够让读者和我一起敲代码, ... 阅读全文 »