使用commander构建CI工具

最近在构建一个CI的工具,第一个时间想到了webpack,下面就如何构建一个CI工具进行详细介绍 0.准备工作 命令行工具 命令行工具使用的是commander,关于commander的介绍,可以移步commander的github地址 打包工具 webpack...

2018-08-20 11:50:16

阅读数 115

评论数 0

函数节流和防抖简单实现

2018-05-09 16:23:13

阅读数 311

评论数 0

JavaScript语言精粹读书笔记

JavaScript运算符优先级 运算符的优先级,依次降低 运算符 含义 .  []  () 提取属性与调用函数 delete new typeof + - ! 一元运算符 * &...

2018-02-26 16:23:21

阅读数 75

评论数 0

ES6中的async/await函数

async被称为终极的异步解决方案,避免了回调地狱,用同步的写法处理异步操作 async和Generator async是Generator的语法糖,两者写法非常相似; Generator代码实例: function* gen(){ //声明一个Generator函数 yi...

2018-02-25 17:24:34

阅读数 1307

评论数 0

ES6中的promise浅析

Promise基本概念 Promise 意为承诺,表示将来一定会发生的事情,是一种异步编程解决方案,最早由社区提出和实现; Promise有三种状态:pending(进行中)、fulfilled(已成功)和rejected(已失败);只能从pending变为fulfilled或者从p...

2018-02-25 15:00:48

阅读数 152

评论数 0

node中的http模块浅析

http模块是node中的核心成员之一,是客户端与服务端交互的基础。http模块不仅可以以极简的方式构建一个服务,还可以发起一个请求;来个简单的栗子: const http = require('http'); //引入http模块 http.createServer((req, r...

2018-02-25 13:43:56

阅读数 102

评论数 0

浅析日历控件的实现

浅析日历控件的实现 日历控件是在开发中常用的控件之一,在没有定制需求的情况下,使用第三方足以解决问题,那么就不需要自己开发;目前一个项目需要个性化定制,因此就梳理下开发一个日历控件的核心部分; 日历数据的生成 日历数据包含3部分,上个月的数据、本月的数据以及下个月的数据,主...

2018-02-25 10:57:04

阅读数 154

评论数 0

Express框架使用

Express简介 Express是一款基于Node.js平台的、极简的web开发框架,其核心是中间件。 自动化构建一个Express应用程序 使用Express 应用生成器可以快速创建一个应用的骨架,前提是首先安装express-generator: npm ins...

2018-02-25 10:20:56

阅读数 119

评论数 0

跨站资源共享(CORS)

跨域http请求 当两个站点的协议(http、https、ftp)、域名、端口不同时,该两个站点构成跨域。出于安全原因, 浏览器会限制脚本发起跨域http请求(也有可能是正常发送,但是拦截返回值)。实际项目中常用的解决跨域的方法通常有JSONP、CORS等。 使用CORS跨域 ...

2018-02-19 22:02:26

阅读数 188

评论数 0

webApp优化心得

webapp性能优化 本文中提到的app前端采用的技术栈是Vue全家桶+原生js http请求优化: 场景1: 当用户操作过快时,页面之间跳转时间缩短,在网络状态不可控的情况下,有可能造成在B页面中提示A页面的消息。 优化方案:在跳转页面的时候,对现有的且已经不需要的aja...

2018-02-08 10:07:58

阅读数 380

评论数 0

JavaScript简单实现发布订阅模式

发布订阅模式主要涉及三个对象:发布者、订阅者、主题对象。 function Dep(){ //主题对象 this.subs = []; //订阅者列表 } Dep.prototype.notify = function(){ //主题对象通知订阅者 this.subs.fo...

2018-02-07 10:21:08

阅读数 269

评论数 0

vue中使用滚动到列表底部

vue中列表滚动到底部 使用原生js,通过div.scrollTop = div.scrollHeight;实现滚动到底部 在vue中,可以使用不同的方式: 监听列表数据:当list发生变化时,执行滚动到底部的逻辑 watch:{ list(val){ ...

2017-10-20 10:58:31

阅读数 1240

评论数 0

JavaScript实现事件原型

function Emitter(){ this._listener=[]; } //绑定事件 Emitter.prototype.bind=function(eventName,callback){ var listener=this._listener[eventName]||...

2017-08-23 10:48:11

阅读数 313

评论数 0

JavaScript中String类型的方法

String类型是字符串的包装类型,可以通过构造函数new String('abc')的方式来创建,也可以var str=’abc’字面量的方式创建。 所有的字符串值都可以访问String对象的方法 valueOf()、toString()、toLocaleString()...

2017-08-15 14:56:21

阅读数 377

评论数 0

Vue源码阅读分享---工具函数

Vue是优秀的前端MVVM框架,阅读源码对于理解框架以及提高js编程水平有极大的帮助,所以把自己阅读的源码分享给大家! 判断一个值是不是为空 function isUndef (v) { return v === undefined || v === null } 判断...

2017-08-15 11:20:49

阅读数 315

评论数 0

JavaScript中的基本数据类型

基本类型值:简单的数据段 引用类型值:多个值构成的对象 JavaScript中有5种基本数据类型,Undefined、Null、String、Number、Boolean、Symbol(ES6新增) 在复制变量值的操作中: 对于基本类型的值,例如var num1=5; var num2=...

2017-08-05 09:19:23

阅读数 332

评论数 0

JavaScript的操作数组的函数

改变原数组的函数(共7个) push:栈方法,在数组的尾部增加一个元素,返回值是新数组的长度 pop:栈方法,在数组的尾部删除一个元素,返回值是被删除的元素 unshift:队列方法,在数组的头部增加一个或多个元素,返回值是新数组的长度 shift:队列方法,在数组的头部...

2017-08-04 20:56:40

阅读数 327

评论数 0

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