所以我正在学习使用node.js导出模块
我在test.js中有var test=require('./test.js');
console.log(test.Library.greet())
在server.js中的我有:
Hello from the Timmy library.
undefined
然后当我在终端中运行节点server.js时,它给出了:
#include<bits/stdc++.h>
...
for(int t=q&1?u+x:u+x>>1;t>1;)t/=p[++cnt]=sieve[t];
...
sort(p+1,p+cnt+1);
这是什么&#34; undefined&#34;意思?错误?
我在这里发现了类似的问题,但这是一个太复杂的例子,我无法理解...... Node Module Export Returning Undefined
答案 0 :(得分:4)
所以这里发生了什么:
server.js
文件中的控制台打印函数调用的返回值。
现在,因为函数调用(test.Library.greet()
)没有显式返回任何内容所以它会隐式返回undefined
。
这是什么印刷品。
答案 1 :(得分:0)
我做了一些实验,
最后知道为什么undefined
会出现:
在server.js
中,请分隔此代码
console.log(test.Library.greet())
到
var str = test.Library.greet();
console.log(str);
,您将知道
当您执行console.log("Hello from the "+ name)
=>时,您将获得第一条输出线
Hello from the xxxx
但是由于您所写的greet()
没有返回值
test.Library.greet()
=>将获得undefined
第二行:console.log(test.Library.greet())
将
undefined
有趣的问题:)