首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >回调函数- NodeJS

回调函数- NodeJS
EN

Stack Overflow用户
提问于 2016-10-18 16:19:35
回答 1查看 134关注 0票数 0

我创建了一个简短的例子,我有一个dubt:

代码语言:javascript
复制
var request = require("request");
var url = "http://api.openweathermap.org/data/2.5/weather?q=turin&APPID=xxxxxxxxxxxxxxxxxxxxxx";
module.exports = function (callback) {

    request(
    {
        url: url,
        json: true
    }, function (error, response, body) {
        if (error) {
            callback("Unable to fetch weather"); // callback function
        } else {
            callback("It is " + body.main.temp + " in " + body.name);
        }
    });

    console.log("After request");
};

从外部文件中,我需要这个模块:

代码语言:javascript
复制
var weather = require("./weather.js");

weather(function (currentWeather) {
    console.log(currentWeather);
});

在本例中,我调用一个weather模块,并得到一个callback函数(它是天气模块的参数),以便将都灵中的天气信息打印到命令行中。但工作怎么样?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-10-18 16:31:46

我调用一个天气模块,并得到一个回调函数(它是天气模块的参数),以便将都灵的天气信息打印到命令行中。但怎么可能呢?

Javascript中的函数是一个一级对象,这意味着您可以将一个函数存储到一个变量中,并将它传递给另一个函数。这种模式在Node.js上非常常见,在Javasript中通常称为延拓传递方式 ( CPS )。

希望能帮上忙。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40113342

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档