es6中的双箭头函数】的更多相关文章

原代码: const fetchPosts = subreddit => dispatch => { dispatch(requestPosts(subreddit)); return common.fetch({url: config.argumentSubmit, method: 'POST'}) .then(response => response.message) .then(message => dispatch(receivePosts(subreddit, messa…
石川es6课程---4.箭头函数 一.总结 一句话总结: 相当于函数的简写,类似python lambda 函数,先了解即可 let show1 = function () { console.log('abc') } let show2 = () => { console.log('abc') } show1() // 调用函数 show2() 二.箭头函数 箭头函数,就是函数的简写 如果只有一个参数,()可以省 如果只有一个return,{}可以省 // 普通函数 function name…
1. 箭头函数没有prototype(原型),所以箭头函数本身没有this let a = () =>{}; console.log(a.prototype); // undefined 2. 箭头函数的this指向在定义的时候继承自外层第一个普通函数的this. 下面栗子中在一个函数中定义箭头函数,然后在另一个函数中执行箭头函数. let a, barObj = { msg: 'bar的this指向' }; fooObj = { msg: 'foo的this指向' }; bar.call(ba…
作者:Sequoia McDowell 2016年01月16日 ES6来啦!随着越来越多的代码库和思潮引领者开始在他们的代码中使用ES6,以往被认为是"仅需了解"的ES6特性变成了必需的代码常识.这不仅仅是新的语法学习 - 在许多范例中, ES6中新的语言特性可以让在ES5中写起来非常麻烦的表达变得更加简单,进而鼓励了新表达方式的使用.下面我们将关注一个这样简洁表达的使用范例:ES6中的箭头函数如何使高阶函数的书写更加简便. 高阶函数是至少具有以下两种功能之一的函数: 使用一个或多个函…
1. 介绍 第一眼看到ES6新增加的 arrow function 时,感觉非常像 lambda 表达式. 那么arrow function是干什么的呢?可以看作为匿名函数的简写方式. 如: var addition = function(a, b) { return a + b }; // 等同 var addition = (a, b) => { return a + b }; 2. 语法 arrow functions(箭头函数)主要有以下4种语法: // 1)基本 (param1, pa…
<script> { // es3,es5 var evens = [1, 2, 3, 4, 5]; var odds = evens.map(function (v) { return v + 1; }); console.log(evens, odds); } { // es6 let evens = [1, 2, 3, 4, 5]; let odds = evens.map(v => v + 1); console.log(evens, odds); } /* * this指向的是…
1.默认值 在ES6中给我们增加了默认值的操作相关代码如下: function add(a,b=1){ return a+b; } console.log(add(1)); 可以看到现在只需要传递一个参数也是可以正常运行的. 输出结果为:2. 2.主动抛出错误 ES6中我们直接用throw new Error( xxxx ),就可以抛出错误. function add(a,b=1){ if(a == 0){ throw new Error('This is error') } return a+…
箭头函数的基本用法与特点 函数与ES6新语法 一.箭头函数的基本用法与特点 声明箭头函数采用声明变量和常量的关键字:var.let.const 箭头函数的参数:没有参数用"()"空括号表示.一个参数可以不写括号.多个参数用"(a,b,c)"括号包裹 使用箭头“=>”连接参数与执行块"{}". 如果执行块内只有return语句,可以不写大括号“{}”和return关键字. //ES6箭头函数 const foo = (x,y) => x…
四种基本用法 1. 一般方法中,this代指全局对象 window 2. 作为对象方法调用,this代指当前对象 3. 作为构造函数调用,this 指代new 出的对象 function test(){ this.x = 1; } var o = new test(); alert(o.x); 4. 调用方法的apply和call方法,可以改变函数的调用对象/作用域 (this)用法: f.apply([thisObj [,argArray] ]); f.call([thisObject[,ar…
generater跟函数很像: function* fn(x){ yield x; yield x++; return x;} 如上所示,generater用function*定义,可以用yield返回多次,也可以使用return返回; 调用generater有两个方法,一是一直调用generater的next()方法: console.log(fn.next()); console.log(fn.next()); console.log(fn.next()); 直到fn.next()返回tru…