nodejs第二篇-学习require对象,exports对象。

上一篇博客就这么水过了,不管你们信不信,我算是觉得已经初识nodejs了。那接下来咱们在来接着上文global对象继续捣鼓捣鼓吧。
1.require对象
node提出的概念就是模块的意思,那模块和模块之间怎么交互呢?当然就是require了,他就跟import差不多,也没啥意思,来两个小demo,搞一搞吧。
1.打开webstrom随便创建一个项目吧:
项目结构
2.创建module1.js,在里面随便写点代码吧。

console.log('我在module1中');
var speak="办公室全是小姐姐。";
setInterval(function () {
    console.log(speak)
},1000);

好了,这样就差不多了。
3.创建module2.js,写上下面的代码吧。

require('./module1');

好了,把module2.js跑起来吧。你会在控制台看见这样的效果。
这里写图片描述
嗯嗯,是的。这就是require的用法。感觉也没什么意思。
这里记下require的特殊地方吧
require加载模块,可以使用相对路径,也可以使用绝对路径。但是如果相对路径不加上./的话,默认会去加载node中的核心模块,或者是node_modules文件,其次,如果不加上后缀名称,首先按照文件名称加载,其次是加上.js后缀——>.json——>.node,最后报错。
2.exports对象
让我们接着上面的代码搞一搞,把module2.js写成这个样子。

require('./module1');
console.log(speak);

好了,又把module2.js跑起来吧。你会发现下面的惊喜。。。。。
这里写图片描述
竟然报错了,不是说require已经把module1.js导入进来了吗?为啥不行。真的操蛋。招了半天也没找到答案呢,然后细细想一下,这尼玛就跟java一样对象speak就像被加了private关键字一样,不能访问。那该怎么办呢。当然是使用exports对象了啊。来,让我们去改一改module1.js的代码,如下:

console.log('我在module1中');
var speak="办公室全是小姐姐。";
exports.speak=speak;

接着修改module1.js如下:

var module1=require('./module1');
console.log(module1);
console.log(module1.speak);

接下来咱们在把module2.js跑起来。
这里写图片描述
看见没有model1竟然是一个json对象,无语。所以这样我们当然能通过module1.speak得到它的值啦。
那么除此之外,我们还可以怎么样获得其他的对象呢?这就要引出module对象了。
算了,要吃饭了下一篇跟新module对象吧。。。。。。。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值