Default Function Parameters.md Default Function Parameters function getSum(a,b){ a = (a !== undefined) ? a : 1 ; b = (b !== undefined) ? b : 41; console.log(a+b); } getSum(); getSum(1,2); getSum (10); getSum(null, 6); In ES5,if the argument is not sp…
Arrow Function.md Arrow Functions The basic syntax of an arrow function is as follows var fn = data => data; The code means : var fn = function( data ) { return data; } let getNumber = () => 42; console.log(typeof getNumber); console.log(getNumber()…
最近在学习使用Webpack3的时候发现,它已经可以在不使用babel的情况下使用ES6的模块加载功能了. 说到ES6的模块加载功能,我们先复习一下CommonJS规范吧: 一  . CommonJS规范规定,在每个模块内的module变量代表当前模块.这个变量的module.exports属性是对外开放的接口. 加载某个模块,其实是加载此模块的module.exports属性. exampleA.js var x = 5; var addX = function (value) { retur…
default 参数默认值 在实际开发 有时需要给一些参数默认值. 在ES6之前一般都这么处理参数默认值 function add(val_1,val_2){ val_1 = val_1 || 10; val_2 = val_2 || 20; return console.log(val_1 + val_2); } add(); 而现在可以这么做 function add_1(val_1 = 5,val_2 = 10){ return console.log(val_1 + val_2); }…
今天来扒一扒在node和ES6中的module,主要是为了区分node和ES6中的不同意义,避免概念上的混淆,同时也分享一下,自己在这个坑里获得的心得. 在ES6之前 模块的概念是在ES6发布之前就出现的,我感觉主要是为了适应大型应用开发的需要而引入了JavaScript世界.模块化编程已经从噱头上升为必备,所以ES6也顺应时代,把这个写进了标准. CommonJS和AMD都是JavaScript模块化规范,在ES6之前,Node主要遵循CommonJS,而AMD则主要运用在浏览器端,比如req…
相同点: 均可用于导出常量.函数.文件.模块等 不同点: 1.在一个文件中export可以有多个,但export default 只能有一个: export var firstName = 'Michael'; export var lastName = 'Jackson'; export var year = 1958; var firstName = 'Michael'; var lastName = 'Jackson'; var year = 1958; export {firstName…
在编写javascript中,常出现在function处提示“missing ( before function parameters”的错误,这是怎么回事? 例如: function String.prototype.trim(){     return this.replace(/(^\s*)|(\s*$)/g,""); } 就经常会报类似的错误. 改成如下时错误消失: String.prototype.trim=function(){     return this.replac…
ES6 Class vs ES5 constructor function All In One ES6 类 vs ES5 构造函数 https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Details_of_the_Object_Model ES6 Class inherit vs ES5 constructor function inherit ES6 类继承 vs ES5 构造函数继承 js constructor fu…
我们知道JS函数内部有个arguments对象,可以拿到全部实参.现在ES6给我们带来了一个新的对象,可以拿到除开始参数外的参数,即剩余参数(废话好多 O(∩_∩)O~). 这个新的对象和arguments不一样,它是程序员自定义的一个普通标识符,只是需要在前面加上三个点:... function func(a, ...rest) { console.log(a) console.log(rest) } func(1) func(1, 2, 3, 4) 注意func的第二个参数rest,前面有三…
Rest and Spread Operators.md Why we need rest and spread operators? var showCollections = function(id, ...collection){ console.log(collection instanceof Array); }; showCollections(42, 'movies', 'music'); instanceof The instanceof operator tests wheth…