js中callback执行

简介:
<!DOCTYPE HTML>
<html>
<head>
    <meta charset="GBK" />
    <title>回调函数(callback)</title>
    <script type="text/javascript" src="http://cdn.bootcss.com/jquery/1.9.0/jquery.min.js"></script>
    <script language="javascript" type="text/javascript">

        function add(p1,p2,callback) {
            console.log("开始"+p2);
            callback(p1+p2);
            console.log("结束"+p2);
        }

        add(1,2,function (r1) {
            console.log(r1);
            // 得到结果1,继续执行
            add(r1,3,function(r2) {
                console.log(r2);
                // 得到结果2,继续执行
                add(r2,4,function(r3) {
                    console.log(r3);
                    // 得到结果3,输出
                    print(r3);
                })
            })
        })

        function print(r) {
            alert(r);
        }

    </script>
</head>
<body >
回调函数(callback)
</body>
</html>
开始2
3
开始3
6
开始4
10
结束4
结束3
结束2

callback的作用就是,一步一步往下执行。等第一步执行完了,再继续执行第二步。
后面的数据,依托于前面的执行结果。

一层一层,往下执行。



本文转自TBHacker博客园博客,原文链接:http://www.cnblogs.com/jiqing9006/p/7833045.html,如需转载请自行联系原作者

相关文章
|
SQL JavaScript 前端开发
【Azure 应用服务】Azure JS Function 异步方法中执行SQL查询后,Callback函数中日志无法输出问题
【Azure 应用服务】Azure JS Function 异步方法中执行SQL查询后,Callback函数中日志无法输出问题
213 0
|
前端开发 JavaScript
js开发:请解释Promise是什么,以及它如何解决回调地狱(callback hell)问题。
Promise是JavaScript解决异步操作回调地狱的工具,代表未来可能完成的值。传统的回调函数嵌套导致代码难以维护,而Promise通过链式调用`.then()`和`.catch()`使异步流程清晰扁平。每个异步操作封装为Promise,成功时`.then()`传递结果,出错时`.catch()`捕获异常。ES6的`async/await`进一步简化Promise的使用,使异步代码更接近同步风格。
292 1
|
存储 JavaScript 前端开发
js开发:请解释什么是回调函数(callback function),并给出一个示例。
回调函数是JavaScript中处理异步编程的一种常见模式,常用于事件驱动和I/O操作。它们作为参数传递给其他函数,在特定条件满足或任务完成后被调用。例如,`asyncOperation`函数接受回调函数`handleResult`,在模拟的异步操作完成后,调用`handleResult`并传递结果。这使得程序员能在操作完成后执行后续任务。
391 1
|
前端开发 JavaScript 数据库
JavaScript基础知识:解释一下回调地狱(Callback Hell)。
JavaScript基础知识:解释一下回调地狱(Callback Hell)。
765 1
|
JavaScript 前端开发 API
JS中的 回调函数(callback)
JS中的 回调函数(callback)
810 0
|
JavaScript 前端开发
js执行机制(同步,异步)
js执行机制(同步,异步)
js执行机制(同步,异步)
|
前端开发 算法 JavaScript
LeetCode仅执行一次字符串交换能否使两个字符串相等使用JavaScript解题|前端学算法
LeetCode仅执行一次字符串交换能否使两个字符串相等使用JavaScript解题|前端学算法
267 0
LeetCode仅执行一次字符串交换能否使两个字符串相等使用JavaScript解题|前端学算法
|
JavaScript 前端开发 测试技术
|
JavaScript 前端开发 UED
关于js暂停执行的方法
关于js暂停执行的方法
1117 0
关于js暂停执行的方法
|
JavaScript 前端开发 程序员
深入理解JS执行机制
深入理解JS执行机制
深入理解JS执行机制

热门文章

最新文章