函数()()在JavaScript中
我不知道如何调用/框架这个问题标题,但任何人都可以解释我下面的代码做什么?
var routes = require("./routes/routes.js")(app);
我看到second ()
与应用程序被传递,这是做什么? https://github.com/couchbaselabs/restful-angularjs-nodejs/blob/master/app.js
令我吃惊的是,在上面的代码中,variables路由在app.js中并没有被使用? 目的是什么? 我在这里很困惑(app) argument
在这里做什么魔术?
构造
foo()();
期望foo()
返回一个函数并立即调用它。 这相当于更具可读性:
var func = foo(); func();
你会经常看到类似的结构是:
(function() { // function definition })(args);
这定义了一个函数并立即调用它。 主要用途是模拟variables的块范围。