随笔分类 -  JS

摘要:Why Fetch XMLHttpRequest是一个设计粗糙的API,不符合关注分离(Separation of Concerns)的原则,配置和调用方式非常混乱,而且基于事件的异步模型写起来也没有现代的Promise,generator/yield,async/await友好。 Fetch的出现 阅读全文
posted @ 2017-08-15 16:05 douglasvegas 阅读(326) 评论(0) 推荐(0)
摘要:为什么是单线程? 单线程即是同一时间只能做一件事,为什么JavaScript不能有多个线程? JavaScript的主要作用是与用户互动,及操作dom。这决定了它只能是单线程,否则会带来很复杂的问题。 假设两个线程,一个线程在某个DOM节点上添加内容,另一个线程删除这个节点,这时浏览器应该以谁为准? 阅读全文
posted @ 2017-08-15 15:00 douglasvegas 阅读(144) 评论(0) 推荐(0)
摘要:先上代码 控制台打印可以看到答案是0,因为typeof先进行计算。如果改成下面这样: 答案则是 number typeof运算符本身只会返回字符串, typeof来判断数据类型会有几个坑: 1. null返回的是object,但是不能当对象使用 2. 对NaN返回的是number,但是不能进行算术运 阅读全文
posted @ 2017-08-15 14:59 douglasvegas 阅读(252) 评论(0) 推荐(0)
摘要:代码示例 构造函数 用来初始化新创建的对象的函数是构造函数。上例中Foo()就是构造函数 实例对象 通过构造函数的new操作符创建的对象是实例对象。一个构造函数可以构造多个实例对象 原型对象及prototype 构造函数有一个prototype属性,指向实例对象的原型对象。构造函数实例化的多个对象具 阅读全文
posted @ 2017-08-08 11:18 douglasvegas 阅读(285) 评论(0) 推荐(0)
摘要:``` onkeyup="this.value=this.value.replace(/\D|^0/g,'')" onafterpaste="this.value=this.value.replace(/\D|^0/g,'')" ``` 阅读全文
posted @ 2017-08-04 10:47 douglasvegas 阅读(9897) 评论(0) 推荐(0)
摘要:问题: xception in initAndListen: 98 Unable to create/open lock file: /data/db/mongod.lock 解决方法: $ sudo mkdir p /data/db/ $ sudo chown /data/db ``` 阅读全文
posted @ 2017-07-21 09:47 douglasvegas 阅读(225) 评论(0) 推荐(0)
摘要:``` document.onclink=function(ev) { var oEvent=ev||event; //兼容IE和FireFox Chrome 只要一个为真就可以执行 alert(oEvent.clientX); }; ``` 阅读全文
posted @ 2017-07-14 15:17 douglasvegas 阅读(163) 评论(0) 推荐(0)
摘要:将ts配置文件中 "target": "es2015" 阅读全文
posted @ 2017-07-12 13:11 douglasvegas 阅读(9067) 评论(0) 推荐(0)
摘要:正确姿势添加如下解析JSON data传值换成JSON.stringify(data) 阅读全文
posted @ 2017-07-07 18:06 douglasvegas 阅读(1374) 评论(0) 推荐(0)
摘要:webpack中涉及许多路径参数的配置。在此做个整理。 context context是webpack编译时的基础目录,entry入口会相对于此目录查找。 若不配置,默认值是当前目录,webpack设置context、默认值代码: this.set("context", process.cwd()) 阅读全文
posted @ 2017-05-09 17:08 douglasvegas 阅读(1879) 评论(0) 推荐(0)
摘要:经常我们会希望通过script方式引入库,如CDN方式的jquery,我们在使用的时候依旧用require方式,但是却不希望webpack将他编译到文件中。 因为模块化开发,杜绝一切全局变量,我们想这样去使用他: 这时,我们需要配置externals 看看编译后什么变化 实际写个例子,我们经常会有自 阅读全文
posted @ 2017-05-09 15:37 douglasvegas 阅读(7737) 评论(2) 推荐(1)
摘要:ES6 function f (x, y, ...a) { return (x + y) * a.length } f(1, 2, "hello", true, 7) === 9 ES5 function f (x, y) { var a = Array.prototype.slice.call(arguments, 2); return (x + y) * a... 阅读全文
posted @ 2016-09-23 14:10 douglasvegas 阅读(208) 评论(0) 推荐(0)
摘要:引子 我们先来看一个常见的例子, 输出的结果并不是我们预期的 0-9,而是输出了十个 10。而当我们把其中的 var 改成 let ,结果就成了 0-9。 原因 var 使用的是函数作用域,即 for 循环中的 var i 实际上在整个 func 函数中都有效。而 setTimeout 中的匿名函数 阅读全文
posted @ 2016-09-23 11:34 douglasvegas 阅读(346) 评论(0) 推荐(0)
摘要:数组方面 push:向数组尾部增加内容,返回的是新数组的长度。 var arr = [1,2,3]; console.log(arr); var b = arr.push(4); console.log(b); console.log(arr); // [1, 2, 3] // 4 //表示当前数组 阅读全文
posted @ 2016-09-09 10:25 douglasvegas 阅读(502) 评论(0) 推荐(0)
摘要:单例模式 单例模式也称作为单子模式,更多的也叫做单体模式。为软件设计中较为简单但是最为常用的一种设计模式。 下面是维基百科对单例模式的介绍: 在应用单例模式时,生成单例的类必须保证只有一个实例的存在,很多时候整个系统只需要拥有一个全局对象,才有利于协调系统整体的行为。比如在整个系统的配置文件中,配置 阅读全文
posted @ 2016-09-08 16:38 douglasvegas 阅读(174) 评论(0) 推荐(0)
摘要:javascript没有父类和子类的概念,它们之间的集成是通过一种“原型链”来集成,每个function对象都有prototype属性,可以用来做内存块共享,在各个实例中共享数据。 先总结几条规律 1.任何函数由function关键字定义的都可以用new关键字实例一个对象,都有prototype属性 阅读全文
posted @ 2016-07-31 17:19 douglasvegas 阅读(259) 评论(0) 推荐(0)
摘要:业务需求这样:用户前一个页面选择了一个机构,到机构页面agents.html,默认选中该input框。 一开始我是这样做的: count为计数使用,机构页面最多选择3个机构。当选择3个的时候。其他机构的input框为不可点击状态,即添加disabled属性。 之后在控制台打印count,发现一个问题 阅读全文
posted @ 2016-07-22 16:51 douglasvegas 阅读(6419) 评论(0) 推荐(0)
摘要:前言 让我们来仔细地看看ES6所带来的更清晰的变量声明与赋值语法。现今的变量声明语法十分的直接:左边是一个变量名,右边可以是一个数组:[]的表达式或一个对象:{}的表达式,等等。解构赋值允许我们将右边的表达式看起来也像变量声明一般,然后在左边将值一一提取。听起来有点迷糊?让我们一起看看下面的例子就好 阅读全文
posted @ 2016-07-13 09:58 douglasvegas 阅读(334) 评论(0) 推荐(0)
摘要:var a = 10; var b = 20; var c = (a++,b++,100); console.log(a); console.log(b); console.log(c); 值是11,21,100 大彻大悟了么? 关于运算符优先级问题可以查看: https://developer.m 阅读全文
posted @ 2016-06-26 11:17 douglasvegas 阅读(165) 评论(0) 推荐(0)
摘要:<!--[if !IE]><!--> 除IE外都可识别 <!--<![endif]--><!--[if IE]> 所有的IE可识别 <![endif]--><!--[if IE 6]> 仅IE6可识别 <![endif]--><!--[if lt IE 6]> IE6以及IE6以下版本可识别 <![ 阅读全文
posted @ 2016-06-24 17:52 douglasvegas 阅读(298) 评论(0) 推荐(0)