SOURCE

// 箭头函数测试
((x,y, ...z) => {
  var i, sum;
  sum = x+y;
  for(i=0;i<z.length;i++){
    sum += z[i];
  }
  console.log("rest params 示例",sum);
})(1,2,3,4,5)


var adder = {
  base : 1,
  add : function(a) {
    var f = v => v + this.base;
    return f(a);
  },
  addThruCall: function(a) {
    var f = v => v + this.base;
    var b = {
      base : 2
    };        
    return f.call(b, a);
  }
};
 
console.log("箭头函数的this指针为其对象所在的上下文环境",adder.add(1));         // 输出 2
console.log('同上',adder.addThruCall(2)); // 仍然输出 2(而不是3 ——译者注)

((...args)=>{
  let f = () => args[0];
  console.log("箭头函数无argumens对象",f())
})(4)

'use strict';
// 箭头函数在定义时就确定了this指针,无法修改
var obj = {
  i: 10,
  f: () => console.log(this.i, this),
  t: function(){
  	console.log(this.i)	
	}
}





























console 命令行工具 X clear

                    
>
console