es6回调函数

Posted heson

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了es6回调函数相关的知识,希望对你有一定的参考价值。

箭头函数

箭头函数简化了函数的的定义方式,一般以 "=>" 操作符左边为输入的参数,而右边则是进行的操作以及返回的值inputs=>output
[1,2,3].forEach(val => console.log(val)););

输入参数如果多于一个要用()包起来,函数体如果有多条语句需要用{}包起来

箭头函数根本没有自己的this,导致内部的this就是外层代码块的this。 正是因为它没有this,从而避免了this指向的问题。

var person = {
    name:'zfpx',
    getName:function(){
-        setTimeout(function(){console.log(this);},1000); //在浏览器执行的话this指向window
+        setTimeout(() => console.log(this),1000);//在浏览器执行的话this指向person
    }
}
person.getName();

回调函数

回调函数需求 var arr = [10,33,44,55,88,20,32]
第?层回调函数 在不不修改本身情况下 每个val 加10
第?层回调函数 在不不修改本身情况下 每个val * 10
第三层回调函数 过滤掉所以 ?小于400 的值

 var arr = [10, 33, 44, 55, 88, 20, 32];
        function m(Arr){
            let arr = Arr;
            // error 语法 map 结束要加 ;
            // 第一层
            (function(A){
                let B = A.map((val) => {
                    return val + 10
                });
                console.log(B);
                // 第二层
                (function (A){
                    let B = A.map((val) => {
                        return val * 10
                    });
                    console.log(B);
                    // 第三层
                    (function (A){
                        let B = A.filter((val) => {
                            return val < 400;
                        });
                        console.log(B);
                    })(B)
                })(B)
            })(arr)
        }
        m(arr);

以上是关于es6回调函数的主要内容,如果未能解决你的问题,请参考以下文章

ES6的Promise

使用ES6 +Promise组织异步代码

es6异步解决方案

ES6深入浅出-9 Promise 3 视频-1.回调与回调地狱

ES6 生成器:将回调转换为迭代器

es6异步函数调用