JavaScript

一个html标签到底包含了多少信息(1)

先来看一段代码:var dom = document.querySelector('body');for(var i in dom){ console.log(i,dom[i])}可以看到很多,来整理一下,总共有三大类(我自己分的,没有科学依据)除了一些私有属性、方法(比如a的私有属性href等)和一些空的属性attributeseventsmethodsattrib

自动化文件目录结构生成工具——filemap.js

项目地址:https://github.com/jrainlau/filemap 开发环境node版本为5.4.1 简介 作为一个经常写博客的人,在介绍自己的项目的时候往往需要介绍文件目录结构。在以往的情况下,要么一行一行手动码字输入,要么简单粗暴地截图,都无法方便快速地构造一个文件目录结构图出来。后来在学习算法的时候,发现文件目录结构跟树的概念非常像,于是便萌生出制作一个

深入阅读gulp源码小结

阅读gulp源码小结gulp源码简介gulp源码核心部分寥寥60+行。但是通过这60+行代码,gulp给我们带来的确是前端自动化构建的便利。以往以为其源码肯定蛮复杂,却没想到却是这么60+行,这60+行的背后,是来自于模块化的支撑。gulp的四个接口分别来源于orchestrator,vinyl-fs两个模块。所以gulp的所有特性都来自于这两个模块。Orchestrato

谷歌地图API 开发 之 新建地图

最近项目用到谷歌地图,但是看谷歌api文档,对于国人来说,还是比较吃力的,网上找资料也并没有太多的资料,所以就想分享给大家。但是因为本人太懒了,每次研究技术完事时间一久就忘了,更别提分享了,在朋友的鼓励支持之下,重新开始写博客,共享给大家,如果有不到位或者错误的地方还希望大家多多指教。 毕竟交流才会进步(^o^)/~好了,废话不多说开始正题。谷歌地图官网:https://d

Vue扩展

效果扩展: Vue.transition('transitionName',{beforeEnter:function(){},enter:function(){},afterEnter:function(){},beforeLeave:function(){},leave:function(){},afterLeave:function(){} })组件扩展: var c

Koa源码阅读笔记(3) -- 服务器の启动与请求处理

本笔记共四篇Koa源码阅读笔记(1) -- coKoa源码阅读笔记(2) -- composeKoa源码阅读笔记(3) -- 服务器の启动与请求处理Koa源码阅读笔记(4) -- ctx对象起因前两天阅读了Koa的基础co,和Koa中间件的基础compose。然后这两天走在路上也在思考一些Koa运行机制的问题,感觉总算有点理通了。今天就来解读一下Koa启动时,发生的一系列事

atom使用全局配置ESLint

ESLint是一个Javascript静态检查工具,它可以帮你养成良好的编程习惯,使你的javascript代码达到国际化的水准。ESLint是所有Javascrpt静态检查工具里最晚诞生的一个,之前还曾经有过JSLint以及JSHint等工具,但JSLint和JSHint都是用的一套标准,在目前这个前端技术飞速发展的时代已经显得有点落伍。ESLint的好处是既提供了国际大

js中判断对象instanceof constructor的比较

为啥JS中判断对象是否是类的实例推荐使用instanceof而不推荐constructor?? 因为instanceof不但可以判断出是直接类的实例(通过new的方式),还可以判断是否是父类的实例 而constructor属性只可以判断出是否是直接类的实例。 从继承的角度看instanceof更加适合。 上代码 function Demo(name,age){this.na

关于正则表达式,你想知道的一切

这里只讲在JavaScript中的正则表达式1: 如何创建一个正则表达式在JS中有 2 种方式创建一个正则表达式:1: 通过正则表达式字面量const pattern = /test/; 这里的双斜杠(//)就像字符串的引号一样(“”或者‘’)一样,用来表明它的类型,是必不可少的。2: 实例化一个RegExp对象 const pattern = new RegExp('te

[译] Webpack 前端构建集成方案

构建工具逐渐成为前端工程必备的工具,Grunt、Gulp、Fis、Webpack等等,译者有幸使用过Fis、Gulp。前者是百度的集成化方案,提供了一整套前端构建方案,优点是基本帮你搞定了,但是灵活性相对比较低,社区也没那么大;后者提供了非常灵活的配置,简单的语法可以配置出强大的功能,流控制也减少了编译时的时间,可以和各种插件配合使用。译者因为要使用AMD模块机制,开始接触