express 回调函数 入门问题求解

var express = require('express');
var app = express();

app.get('/', function (req, res) {
res.send('Hello World');
})

var server = app.listen(8081, function () {

var host = server.address().address
var port = server.address().port

console.log("应用实例,访问地址为 http://%s:%s", host, port)

})

为什么里面可以访问server.address().address 回调函数里面的变量可以访问返回值server?

阅读 3.2k
2 个回答

因为执行callback的时候,app.listen()这个函数已经返回了,所以server已经被附上值了。

因为server已经定义且为全局变量,可为其赋值

var server=express(function(){
            server.x=6;
            alert(server.x);
        });
        function express(fuc){
            server={};
            fuc();
        }
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题