一、 ES5 中 concat 实现数组合并
var array_1 = ['reese','root','fusco'];
//["finch", "shaw", "bear", "reese", "root", "fusco"]
var array_2 = ['finch','shaw','bear'].concat(array_1);
这样就实现了2个数组的合并。
二、 ES6 中拓展符 … 实现数组合并
var array_1 = ['reese','root','fusco'];
//["finch", "shaw", "bear", "reese", "root", "fusco"]
var array_2 =['finch','shaw','bear',...array_1];
ps: ...
运算符在ES6
默认参数中也有用到。
三、ES5 和 ES6 语法区别
-
对象写法
es5中对象:{add:add,substrict:substrict}
es6中对象:{add,substrict}
-
在对象中方法写法
es5中对象:{add:function(){},substrict:function(){}}
es6中对象:{add(){},substrict(){}}
-
对象导出写法
es5两种形式:
-
module.exports = fucntion (){};
-
exprots.add = fucntion (){};
es6
中写法:
写法1:export default{ add(){} }
2、
export fucntion add(){}
相当于将add方法当做一个属性挂载到exports对象上。
- 对象的导入
es5:var add = require('./calc.js');
es6:
如果导出的是:export default{ add(){}}
那么可以通过import obj from './calc.js'
如果导出的是:
// 写法一
export fucntion add(){}
export fucntion substrict(){}
export const PI=3.14
// 写法二
var m = 1;
export {m};
// 写法三
var firstName = 'Michael';
var lastName = 'Jackson';
var year = 1958;
export {firstName, lastName, year};
那么可以通过按需加载 import {add,substrict,PI} from './calc.js'
es6
中箭头函数写法//需求:利用函数实现倒序排列 [2,1,3].sort(function(x,y){return y - x;}); //用箭头函数实现 =>读 goes to [2,1,3].sort((x,y)=>{return y - x;}); [2,1,3].sort((x,y)=> {x++;y++; y - x;}); [2,1,3].forEach(x=> {console.log(x)});