Node.js require() 总是返回未定义的
Node.js require() returns undefined always?
我正在尝试将 Node.js 与 Amazon AWS 一起使用,当我尝试声明一个 aws 实例时,我总是返回未定义。此外,当我尝试要求一个通用模块(例如 http(时,终端也会返回未定义。当我尝试执行实际脚本时,会发生这种情况。
终端代码段:
User$ node
> var aws=require('aws-sdk')
undefined
> var web =require('http')
undefined
你看到的不是require(...)
的返回值,仅仅是因为这不是你输入的。
您正在观察语句的结果,var aws = require('aws-sdk')
.该语句(带有赋值的变量声明(具有"未定义的值"。如果您检查存储在 aws
变量中的内容,您将看到它不是未定义的,它包含require(...)
调用返回的模块。
试试这个:
- 启动节点
- 类型
var x = 2
您还将看到undefined
.而且您知道"2"绝对不是"未定义的"。
现在,试试这个:
- 启动节点
- 键入
require('aws-sdk')
(或任何其他模块,例如http
;请注意,这只是需要模块,而不是将其分配给任何变量(
您将看到正在 REPL 中打印的模块。
最后,试试这个:
- 启动节点
- 类型
var aws = require('aws-sdk')
- 类型
aws
这会将aws
变量的值打印到 REPL 中。该值是require(...)
调用返回的任何值。你会发现它绝对不是"未定义的"。
这是 Node 在任何平台上.js精确预期的行为(即,您观察到的内容与您在 AWS 上运行 Node 的事实完全无关;您可以在笔记本电脑上运行它,无论您拥有什么操作系统,您都会看到完全相同的行为(。
相关文章:
- 这.SOMETHING 总是返回未定义的 - extjs
- React+Meteor:this.ops返回未定义
- 解析-为什么user.getSessionToken()返回未定义的结果
- Javascript函数返回未定义
- JavaScript-获取数据属性的值返回未定义的值
- .val()返回未定义的.text返回随机代码
- 为什么innerHTML返回“未定义”
- "这个“;正在返回未定义的
- 谷歌地图:函数返回未定义的值在console.log中运行良好
- Javascript json返回未定义
- importScripts在web工作程序中返回未定义的
- 访问嵌套 json 对象的属性将返回未定义
- NativeAppEventEmitter返回未定义的
- 我的函数返回“未定义”
- 新手Javascript函数返回未定义的石头剪刀游戏
- Nodejs模块函数返回未定义的,而不是异步的
- .getElementById在.createTextNode中返回未定义
- javascript函数不返回未定义的值
- Typeahead的Javascript类型返回未定义
- Javascript可见元素返回未定义