node.js - 为什么在 Node 中一定要使用 require 一步调用一个函数?

标签 node.js socket.io

以 socket.io 示例为例:

为什么这在 Node 中有效:

var io = require('socket.io').listen(server);

但是分两个不同的步骤做不是吗? (即):

var io = require('socket.io');
io.listen(server);

最佳答案

案例一:

var io = require('socket.io').listen(server);

这里,io 被设置为从 socket.io 模块调用 listen(server) 的结果。

案例二:

var io = require('socket.io');
io.listen(server);

在这里,io 被设置为 socket.io 模块本身。

因此它们执行相同的功能,但 io 最终设置为不同的值。

案例 1 中的函数调用链接是 node.js 中的常见习惯用法,但如果您真的想使用两行代码,同时 io 仍然最终设置为以防万一1、单独捕获require调用的结果即可:

var socketio = require('socket.io');
var io = socketio.listen(server);

关于node.js - 为什么在 Node 中一定要使用 require 一步调用一个函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34602885/

相关文章:

android - Android 上的 node.js npm

node.js - 在node.js中使用npm后从客户端访问underscore.js

javascript - 方法是否占用 javascript 类实例中的空间?

javascript - 将 nodejs c++ 插件的速度与等效的 js 进行比较?

javascript - 在 Node/Express 中散列、加盐并保存密码

node.js - 我如何仅向目标用户发送?

node.js - Google App Engine 上的 Sails.js 套接字问题

node.js - 使用 mongoose 获取子文档的 Node api

javascript - 如何使用JS检测网络中的服务器?

javascript - NodeJS + Socket IO 发送过多数据