美文网首页
Node.js-回调函数

Node.js-回调函数

作者: 薥劃 | 来源:发表于2020-01-23 09:24 被阅读0次

    回调函数

    回调函数就是一个通过函数指针调用的函数。如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用为调用它所指向的函数时,我们就说这是回调函数。
    在JavaScript中,回调函数具体的定义为:函数A作为参数(函数引用)传递到另一个函数B中,并且这个函数B执行函数A。我们就说函数A叫做回调函数。如果没有名称(函数表达式),就叫做匿名回调函数。

    阻塞代码实例

    创建一个名为“mytext.txt”的文本文件,写入如下内容

    测试DEMO

    创建demo2.js文件,并写入如下内容

    //引入fs模块,进行文件操作
    var fs = require("fs");
    //读取文件
    var data = fs.readFileSync('mytext.txt');
    //打印日志
    console.log(data.toString());
    console.log("程序执行结束!");
    

    执行结果如下

    [Running] node "c:\Users\user\Desktop\node\demo2.js"
    测试DEMO
    程序执行结束!
    [Done] exited with code=0 in 0.094 seconds

    非阻塞代码实例

    创建一个名为“mytext.txt”的文本文件,写入如下内容

    测试DEMO

    创建demo3.js文件,并写入如下内容

    //引入fs模块,进行文件操作
    var fs = require("fs");
    
    fs.readFile('mytext.txt', function (err, data) {
        if (err) return console.error(err);
        console.log(data.toString());
    });
    
    console.log("程序执行结束!");
    

    执行结果如下

    [Running] node "c:\Users\user\Desktop\node\demo3.js"
    程序执行结束!
    测试DEMO
    [Done] exited with code=0 in 0.11 seconds

    • 第一个程序在运行时序上,先执行读取文件操作,此时需要等待文件全部读取完毕才可以执行下面输出语句。
    • 第二个程序利用了回调函数,在读取文件的同时仍执行输出语句,在文件读取完毕之后,再回过头来运行回调函数。

    相关文章

      网友评论

          本文标题:Node.js-回调函数

          本文链接:https://www.haomeiwen.com/subject/gyqnzctx.html