NodeJS 需要函数

2024-03-08

当我检查节点的全局和模块时,我发现 require 不在其中。我不知道这是否神奇,但如果有人可以解释 require 是否是全局的,那么为什么它不在全局对象中也不在模块对象中?


因为它在scope。当加载到文件中时,节点在幕后wraps https://github.com/joyent/node/blob/v0.10.16/src/node.js#L878-885源代码,使您的代码实际上如下所示:

(function (exports, require, module, __filename, __dirname) {
// here goes what's in your js file
});

然后它调用匿名函数,传入一个新对象exports以及对require功能。 (进一步详细信息请参见此处。 https://stackoverflow.com/a/18317790/201952)

现在应该很明显为什么你可以打电话require尽管它不是真正的全球性的。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

NodeJS 需要函数 的相关文章

  • 如何刷新nodejs child_process stdin.write

    我需要在服务器端为客户端运行一个 C 程序 这个程序可以是交互式的 我正在使用 Node js child process 类 但我在这里看到一个问题 由于我需要保持程序交互 因此客户端和 Node js 服务器之间会来回交换消息 1 程序
  • 服务器重新启动时显示等待页面

    我有一个服务器并为其创建一个 Web 界面 如果用户按下页面上的重新启动按钮 则用户将被重定向到reboot php他应该看到一个旋转 gif 直到服务器再次可访问并且服务器通过 shell 执行重新启动 如果服务器可以访问 那么我需要重定
  • 输入值返回 NaN

    如果有人可以帮助我 因为我不知道为什么控制台中总是有 NaN 一切似乎都很好 该代码应该获取输入值并进行简单的计算 不幸的是 我收到了 NaN 所以我决定使用 console log 来探索值 它向我解释了每个输入的值都是 NaN 我认为这
  • 如何阻止 HTML 输入字段中的特殊字符? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我只是想问一下如何在html输入字段中阻止 等特殊字符 为什么不使用html5呢
  • WebStorm已将目录中的所有文件标记为非项目文件

    WebStorm 已将我的项目子目录 根目录的服务器部分 中的所有文件标记为非项目文件 它发生在我转换到 Babel 然后又转换到 TypeScript 的过程中 我已经删除了 TypeScript 的内容 想知道这是否与该配置有关 我相信
  • Flot 中轴的逗号分隔数字

    有没有办法让 Flot 使轴编号以逗号分隔 例如 用 1 000 000 代替 1000000 您可以通过使用轴的tickFormatter 属性来做到这一点 xaxis tickFormatter function val axis in
  • 如何在Keystone.js List Map中指定多个字段?

    想知道如何在 Keystone js List Map 中指定多个字段 例如 基于 Keystone 数据模型文档 http keystonejs com docs database http keystonejs com docs dat
  • Leaflet.js setMaxBounds 忽略南界

    Using 传单 js http leafletjs com reference html对于开源地图项目 但我需要设置用户无法超越的特定界限 地图对象的 maxBounds 属性在北 东 西方向上按预期工作 但它让我永远向南滚动 在小提琴
  • 如何在此彩票功能中显示所有猜中的号码?

    我用 JS 创建了一些简单的彩票功能 一切正常 我面临的唯一问题是如何显示所有已猜到的数字 我有 6 个独立的空间 其中必须提供数字 我的目标是显示随机空间中的滚动数字 它必须仅在 6 个空间之一中提供 这对我有用 但只显示 1 个数字 我
  • 如何通过ajax点击时从javascript文件执行节点(控制台)命令

    我是 Node js 新手 这是我的问题 例如 我得到了 Web 应用程序 并且从该应用程序中我有一个按钮 单击按钮后我想运行节点控制台命令 例如 node socket io So button on click function run
  • JS 是否支持使用键函数而不是比较器进行排序?

    JavaScript 的array sort https developer mozilla org en US docs Web JavaScript Reference Global Objects Array sort Syntax方
  • RxJS 将三元组中的属性组合到表中

    我有一项服务生成类似于三元组的对象 它们将采用以下格式 country attribute value Example country usa attribute population value 100 country mexico at
  • JS 检查深层对象属性是否存在[重复]

    这个问题在这里已经有答案了 我正在尝试找到一种优雅的方法来检查对象中是否存在某些深层属性 因此 实际上试图避免对未定义的情况进行巨大的保护性检查 例如 if typeof error undefined typeof error respo
  • JavaScript 中 == 和 === 的区别[重复]

    这个问题在这里已经有答案了 有什么区别 and 在 JavaScript 中 我也见过 and 运营商 还有更多这样的运营商吗 看看这里 http longgoldenears blogspot com 2007 09 triple equ
  • 如何从节点服务器发送 Firebase 云消息传递?

    有什么办法可以发送通知吗FCM from a node js server 我在文档中没有找到任何有关它的内容 通过 Firebase Cloud Messaging 发送消息需要调用 HTTP 端点 如发送下游消息的文档 https fi
  • JavaScript 排序列表

    Javascript 或 jQuery 中有排序列表吗 我有一个巨大的列表 随着时间的推移 插入操作很少 每次添加单个项目时 我无法为整个列表调用 object sort 我需要插入 o log n 不 没有 你拥有的只是Array sor
  • ImmutableJS:合并两个对象列表,而不重复它们

    假设我有以下内容 var allFoods Immutable List var frenchFood Immutable List type french fries price 3 type petit gateau price 40
  • Webpack 不包括 ProvidePlugins

    我正在开发一个小型试用 Web 应用程序 它使用 vue webpack 模板 https github com vuejs templates webpack https github com vuejs templates webpac
  • 监听鼠标事件……除了 div 的溢出:滚动滚动条?

    关于如何监听 mousedown 的任何建议 document exceptdiv 的溢出 滚动滚动条 我不确定滚动条是什么元素is为了参考它 您可以使用以下命令自行检查目标 document on mousedown function e
  • 如何提交表单 onkeyup 操作

    我正在尝试保存表格onkeyup行动 我是 jQuery 新手 这可能吗 我很感激任何帮助 编辑1 保存表单意味着保存到服务器 有没有办法增加0 2秒的延迟 此代码将在 keyup 上提交您的表单 element bind keyup fu

随机推荐

  • Rhino - 模拟类而不覆盖虚拟方法

    如果我正在模拟一个类 如下所示 有什么方法可以让模拟not重写虚拟方法 我知道我可以简单地删除 virtual 修饰符 但我实际上想稍后删除此方法的行为 换句话说 除了删除 virtual 修饰符之外 如何才能通过此测试 namespace
  • 递归查找子集

    这是我尝试创建的一个递归函数 用于查找 STL 集中传递的所有子集 这两个参数是一个用于搜索主题的 STL 集 以及一个数字 i gt 0 它指定子集应该有多大 如果整数大于集合 则返回空子集 我认为我这样做不正确 有时是对的 有时则不是
  • 在 Erlang 中如何将元组对列表转换为记录?

    假设我有这个 record my record foo bar baz Keyvalpairs foo val1 bar val2 baz val3 Foorecord my record foo val1 bar val2 baz val
  • SimpleDateFormat 错误地解析字符串

    String s 19 17 38 008000 DateFormat f new SimpleDateFormat HH mm ss SSSSSS Date d f parse s system out println d 这是我正在运行
  • 有没有办法在 Windows 上使用 Qt 列出当前进程?

    使用 Qt 4 是否可以知道哪些进程正在运行 我正在寻找一种方法来等待用户关闭应用程序才能进行操作 我也不知道 Qt 解决方案 但使用CreateToolhelp32Snapshot Process32FirstW and Process3
  • 在后台任务中添加到 CALayer 时 UIImage 不显示

    在我的视图控制器中我有 IBOutlet var worldmapview Worldmapview var eventLayer CALayer CALayer 和一些功能 func create picture layer pathto
  • SVN 标签:如何不更新/签出它们?

    在许多项目中 我查看完整的存储库并获得标准目录结构 project branches tags trunk 如果我做一个svn up project 一切都很好branches and trunk文件夹 但是 当然 tags文件夹也更新了
  • 我无法将 postgresql schema.table 与 dplyr 包连接

    我正在尝试将 postgres 与 dplyr 函数连接 my db lt src postgres dbname mdb1252 user diego password pass my db src postgres 9 2 5 post
  • 带日期轴的箭袋或倒钩

    绘制箭袋或倒刺的时间序列 日期 的标准方法是什么 我经常在 Pandas DataFrame 中有时间序列 并像这样绘制它们 plt plot df index to pydatetime df parameter 这非常有效 x 轴可以被
  • 使用@font-face 使用多种自定义字体?

    我确信我错过了一些非常直接的东西 一直使用带有普通字体的单个自定义字体 font face font family CustomFont src url CustomFont ttf 当我使用它时一切正常 但如果我想添加另一种自定义字体我该
  • StandardML 中的 y 组合器

    我知道我可以用 SML 编写 y 组合器 如下所示 首先声明一个新的数据类型来绕过由于循环而导致的类型不匹配 datatype a mu Roll of a mu gt a val unroll fn Roll x gt x 现在您可以轻松
  • 使用 GitLab API 设置外部问题跟踪器设置?

    我将 GitLab 与外部问题跟踪器 JIRA 一起使用 并且效果很好 我的问题是当我创建一个新的 GitLab 项目 使用 API 时 我必须进入 GitLab 的项目设置并manually选择我想要使用的问题跟踪器并manually输入
  • Django 中多个视图中的相同 URL

    我正在开发一个网络应用程序 我需要这样的东西 url r collection views home name home url r collection views main name main 如果用户已通过身份验证 则转到 main
  • 视图变换后图像超出范围

    我在显示图像时遇到问题 我有一个想要全屏显示的图像 所以我有这个带有 match parent 和 20dp 填充的 Imageview 它看起来不错 但是当我对其应用旋转时 视图的边界似乎没有改变 并且图像可能会被剪出屏幕 完全不希望这样
  • C# 禁用 WPF 窗口的 Aero snap [重复]

    这个问题在这里已经有答案了 可能的重复 禁用 Aero 捕捉 wpf https stackoverflow com questions 2470685 disable aero snap wpf 我有一个 C WPF 应用程序 我希望主窗
  • 如何编写一个接受回调作为参数的 jquery 函数

    我有以下功能 function ChangeDasPanel controllerPath postParams post controllerPath postParams function returnValue DasSpace hi
  • 简单的“+[NSTimerchedTimerWithTimeInterval:repeats:block:]:无法识别的选择器”错误

    迁移到 10 12 Sierra 和 Xcode 8 1 后 我遇到了一个奇怪的错误 NSTimer scheduledTimerWithTimeInterval repeats block unrecognized selector se
  • 错误:Java 堆空间

    在 Ubuntu 中 当我运行 hadoop 示例时 bin hadoop jar hadoop examples 1 0 4 jar grep input output dfs a z echo HADOOP HEAPSIZE 2000
  • SwiftUI - 用于数组中索引的索引集

    我在 NavigationView 和列表中使用 ForEach 并结合用户使用 onDelete 删除行时调用的函数 如下所示 struct PeriodListView View ObservedObject var theperiod
  • NodeJS 需要函数

    当我检查节点的全局和模块时 我发现 require 不在其中 我不知道这是否神奇 但如果有人可以解释 require 是否是全局的 那么为什么它不在全局对象中也不在模块对象中 因为它在scope 当加载到文件中时 节点在幕后wraps ht