js回调函数的简单理解

更新日期: 2019-09-22阅读: 1.8k标签: 回调

什么是回调? 

A callback is a function that is passed as an argument to another function and is executed after its parent function has completed。
字面上的理解,回调函数就是传递一个参数化的函数,就是将这个函数作为一个参数传到另一个主函数里面,当那一个主函数执行完之后,再执行传进去的作为参数的函数。走这个过程的参数化的函数 就叫做回调函数。换个说法也就是被作为参数传递到另一个函数(主函数)的那个函数就叫做 回调函数。


例子:

1.基本方法

<script >
    function doSomething(callback) {
    // … 
    // Call the callback
        callback(‘stuff‘, ‘goes‘, ‘here‘);
    } 
    function foo(a, b, c) {
    // I‘m the callback
    alert(a + " " + b + " " + c);
    } 
    doSomething(foo); 
</script>

或者用匿名函数的形式:

<script>
    function dosomething(damsg, callback){
        alert(damsg);
        if(typeof callback == "function") 
        callback();
    } 
    dosomething("回调函数", function(){
        alert("和 jquery 的 callbacks 形式一样!");
    }); 
</script>


         

.call调用:

<script>

    function Thing(name) {
        this.name = name;
    }
    Thing.prototype.doSomething = function(handle) {
        // alert(this.name);
        //将值传回给handle函数
        handle.call(this,this.name);
        // handle(this.name); --> undefind
    }
    // function foo() {
    // alert(this.name);
    // }
    var t = new Thing('Joe');
    t.doSomething(function(a){
    alert(a);
    }); // Alerts "Joe" via `foo`    
</script>


链接: https://fly63.com/article/detial/6099

js中async和await

mdn上说:async function 声明用于定义一个返回 AsyncFunction 对象的异步函数。异步函数是指通过事件循环异步执行的函数,它会通过一个隐式的 Promise 返回其结果。

深入理解Js回调函数

JavaScript回调函数是成为一名成功的 JavaScript 开发人员必须要了解的一个重要概念。但是我相信,在阅读本文之后,你将能够克服以前使用回调方法遇到的所有障碍。在开始之前,首先要确保我们对函数的理解是扎实的

js中的回调函数

一般我们使用函数,在顺序上是先定义函数,在去调用它。而回调函数则在写代码的过程中反了过来,先去设计函数的调用场景,然后到了需要调用的时候再去定义它。

如何解决 Render Props 的回调地狱?

简而言之,只要一个组件中某个属性的值是函数,那么就可以说该组件使用了 Render Props 这种技术。听起来好像就那么回事儿,那到底 Render Props 有哪些应用场景呢

nodejs中什么是回调地狱?

nodejs中I/O的操作结果基本上都需要在回调函数中处理,当处理多个事件时回调函数就会一层层的嵌套,这就是回调地狱。Nodejs最大的亮点就在于事件驱动, 非阻塞I/O 模型

usestate中的回调函数_React Hooks 中使用 setInterval 的若干方法

对于每个使用 React Hooks 的开发者来说,setInterval 是一个绕不过去的”坑“。由于React Hooks 特有的设计理念,如果用固有的思维模式去写 setInterval,很容易触发意想不到的 bug。

内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!