D-前端笔记ECMAScript6-function理解学习。

凡是技术的革新,其目的都是使问题更容易解决,解决问题的方式更科学,使技术本身更简单理解。

关于ECMAScript6,你不用管什么好呀坏的,你只需要知道现在的主流框架react,angular,vue……都是用的它就够了。如果你想转后台,我支持你不学。r如果你不想转,那你就别逼逼,跟着老子一起ABC学起来。

ES6几个改变一个一个来:

一、箭头函数“=>”

var fun=value=>value;

console.log(fun(5));//5

换成es5的写法 :

var fun = function(value){

       return value;

}

console.log(fun(5));//5

如果箭头函数不需要参数或需要多个参数,就使用一个圆括号代表参数部分。

var fun = () =>5;等同于var fun = function(){return 5};

var fun = (a,b) =>a+b;等同于var fun = function(a,b){return a+b};

如果箭头函数的代码块部分多于一条语句,就要使用大括号将它们括起来,并且使用return语句返回。

var fun = id => ({id:id,job:"程序员"});console.log(fun("D"))        //{id: "D", job: "程序员"}

等同于

var fun=function(id){

            return{"id":id,"job":"程序员"}

};

console.log(fun("张殿峰"));           //{id: "D", job: "程序员"}

显而易见箭头函数使得表达更加简洁。

const isEven= n => n %2==0;//是否能整除2.

const square= n => n * n;//平方数

一行一个工具函数,只是js在你脑子里的固化让你有些不适应,一旦适应了,比以前要事半功倍。

还可简化回调函数,我们这里用map映射,sort排序方法举例:

map方法:

var data = [1,2,3,4];

var v = data.map(x=> x*x);  console.log(v); //[1, 4, 9, 16]

等同于

 var v = data.map(function(x){

                     return x*x

            }); 

console.log(v);//[1, 4, 9, 16]

sort方法:

var value = [100,0,10,9];

var values = value.sort((a,b)=>b-a);

console.log(values);//[100, 10, 9, 0]

等同于:

var values = sort(function(a,b){

         return b-a;

});

console.log(values);//[100, 10, 9, 0]

注意:

箭头函数里的this对象,定义的时候是什么对象就是什么对象,而不是使用时。

new不了,不能当成一个构造函数使用,否则会报错。

不可以使用arguments对象,该对象在函数体内不存在。如果要用,可以用 rest 参数代替。

不可以使用yield命令,因此箭头函数不能用作 Generator 函数。

















未完待续........

你可能感兴趣的:(D-前端笔记ECMAScript6-function理解学习。)