ECMAScript6箭头函数ArrowFunction"=>"】的更多相关文章

一.说明 ECMAScript6可以用箭头"=>"定义函数.x => x * x或(x) => {return x * x;}与匿名函数function(x){return x * x;}相等. 二.示例 2.1 没有参数的箭头函数 var f = () => 9; console.log(f()); //9 2.2 一个参数的箭头函数 var f = x => x * x; console.log(f(3)); //9 var f = x => {…
2015年6月17日,ECMAScript 6发布正式版本,即ECMAScript 2015. 函数作为js语言中的一等公民.自然Es6中推出的箭头函数(=>)也是备受瞩目的.那我们接下来看下传说中的“箭头函数”和function函数有什么不同吧~ 1.this的指向,函数内置 this 的值,取决于箭头函数定义的上下文环境,而非箭头函数执行的上下文环境. 2.this不可变,不同于function函数的指向(点我): 箭头函数的this的指向是一成不变的,可以理解为常量一样. 3.没有argu…
箭头函数有两个好处. 1.他们比传统函数表达式简洁. const arr = [1, 2, 3]; const squares = arr.map(x => x * x); // 传统函数表达式: const squares = arr.map(function (x) { return x * x }); 2.箭头函数不会绑定关键字this,我们不需要用bind()或者that = this这种方法了 function UiComponent() { const button = docume…
关于函数表达式中的this:自动引用正在调用当前方法的.前的对象1.obj.fun()中的this fun中的this -> obj2.new Fun() Fun中的this -> 正在创建的新对象3.fun()和匿名函数自调 this -> window4.类型.prototype.fun() fun中的this -> 将来调用fun的.前的子对象,子对象一定是当前类型5.如果this不是想要的对象 fun.call(替换this的对象),相当于对象.fun()ex:键盘事件 /…
首先在网上摘抄借鉴了一段代码, 然后再这段代码里面进行分析,通过比较ES6的箭头函数和普通函数的this指指向, 分析其中的不同之处.下面就是代码片段var name = "window"; var zhixiang= { name:"demo", // 传统函数 normalFunction: function(){ console.log(this.name); // demo var _this= this; setTimeout(function(){ co…
「箭头函数」是 ECMAScript6 中非常重要的性特性.很多文章都在描述它的上下文透明性以及短语法.新特性必然会带来很多好处,但凡事都有两面性.本篇文章会通过情景引导,让你知晓哪些情景下应该绕过箭头函数,哪些情景下使用短语法让代码更加精炼. 特性介绍 单个入参时可省略(),箭头函数代码块部分只有单条语句返回时,可省略{}和return var f = v => v; // 等同于 var f = function(v) { return v; } var f = () => 5; // 等…
[原创] 码路工人 大家好,这里是码路工人有力量,我是码路工人,你们是力量. 如果没用过CSharp的lambda 表达式,也没有了解过ES6,那第一眼看到这样代码什么感觉? /* eg.0 * function definition */ var arr = [1,2,3,5,8,13,21] arr.forEach(n => console.log(n)) 数组的forEach 方法里需要传入一个函数(没用过 CSharp 里委托 delegate 的也许会觉得奇怪,js 里参数竟然可以是一…
箭头函数=>无疑是ES6中最受关注的一个新特性了,通过它可以简写 function 函数表达式,你也可以在各种提及箭头函数的地方看到这样的观点——“=> 就是一个新的 function”. 箭头函数的句法规则甚至早已延伸到各项标准和技术文档中去了,虽然它早已不稀奇,却给我们一种刚刚发现的新鲜感.  粉我的人都知道俺因为某些原因不怎么喜欢 => 的语法,不过别担心,本文并非讲述我为何不喜欢它,如果你对这个观点感兴趣,可以查看我<YDKJS:ES6 & Beyonf>一书…
箭头函数:省去了关键字function和return: eg: reduce=(a,b)=>a+b;//返回a+b的值 redduce=(a,b)=>{console.log(a);console.log(b);return (a+b);}//对于有块级作用域的,如要返回值,需用return返回 注意: 当用箭头符号创建一个普通对象时,最好用小阔号将其包裹,因js引擎也会将类似{key,value}这样的对象解析为块语句,会造成歧义. eg: 创建狗的空对象 var newDog=Dog=&g…
一.箭头函数 普通函数1 var add = function (a, b) { return a + b; } 普通函数2 function add (a, b) { return a + b; } 箭头函数 var add = (a, b) => a + b; 如果函数内部只有一句返回值,连return都不用写了,如果里面执行的语句比较多,就用{ }括起来 var add = (a, b)=> { console.log("这是箭头函数"); return a + b;…