node.js使用require()函数加载模块


Posted in Javascript onNovember 26, 2014

详细说明均以写在注释之中,这里就不??铝耍?』锇槊亲约合晗缚窗桑??虮鸢勺⑹偷背煽掌?恕?/p>

/*在node中,可以使用require()函数来加载模块.

 * require函数使用一个参数,参数值可以带有完整路径的模块的文件名,也可以为模块名.当使用node中提供的模块时,在require函数中只需要指定模块名即可.

 * */

//建立一个页面2.js;代码如下

var name="思思博士";

exports.name=name;

//建立一个页面1.js;代码如下

var two=require("./2.js");

console.log(two.name);

//输出结果:思思博士

/*

 * 在node中所有的脚本文件都是一个模块文件,因此1.js也是一个模块文件,又由于该文件是在命令行窗口中通过node命令被直接运行的,因此在node中该模块文件被定义为应用程序的主模块

 * 可以用如下的方法检测出当前的模块是否是主模块

 * */

if(module===require.main){

    console.log("当前模块时主模块");

}

//输出结果:当前模块时主模块

//2.js代码

var name="思思博士";

console.log(name);

exports.name=name;

//1.js代码:

var two=require("./2.js");

var two=require("./2.js");

//虽然引用了2次,但是只是执行了1次console.log(name)的输出.

/*require.resolve(str)

 * 在node中,可以使用这个函数来查询某个模块文件的带有完整绝对路径的文件名.

 * */

var url=require.resolve("./2");

console.log(url);

//输出结果:E:\node\gys\2.js

/*require.cache

 * 在node中,这个属性代表了所有已被加载模块的缓存区.

 * */

var two=require("./2.js");

var cache=require.cache;

console.log(cache);

/*输出结果:

 * { 'E:\\node\\gys\\1.js':

 { id: '.',

 exports: {},

 parent: null,

 filename: 'E:\\node\\gys\\1.js',

 loaded: false,

 children: [ [Object] ],

 paths:

 [ 'E:\\node\\gys\\node_modules',

 'E:\\node\\node_modules',

 'E:\\node_modules' ] },

 'E:\\node\\gys\\2.js':

 { id: 'E:\\node\\gys\\2.js',

 exports: { name: '思思博士' },

 parent:

 { id: '.',

 exports: {},

 parent: null,

 filename: 'E:\\node\\gys\\1.js',

 loaded: false,

 children: [Object],

 paths: [Object] },

 filename: 'E:\\node\\gys\\2.js',

 loaded: true,

 children: [],

 paths:

 [ 'E:\\node\\gys\\node_modules',

 'E:\\node\\node_modules',

 'E:\\node_modules' ] } }

 * */

//2.js代码

var name="思思博士";

console.log(name);

//1.js代码

//当使用delete关键字删除缓存区中缓存的某个模块对象后,下次加载该模块时将重新运行该模块中的代码.使用代码:

var two=require("./2.js");

var two1=require("./2.js");

console.log("删除前")

delete require.cache[require.resolve("./2.js")];

console.log("删除后");

var two2=require("./2.js");

/*

 * 输出结果:

 * 思思博士

 * 删除前

 * 删除后

 * 思思博士

 * */

童鞋们是否了解了node中require()函数的用法了呢,本文是自己的一些理解,如有遗漏,还请大家指正。

Javascript 相关文章推荐
一个简单的javascript类定义例子
Sep 12 Javascript
jQuery 页面 Mask实现代码
Jan 09 Javascript
JavaScript格式化数字的函数代码
Nov 30 Javascript
jQuery插件 selectToSelect使用方法
Oct 02 Javascript
基于javascript实现文字无缝滚动效果
Mar 22 Javascript
JavaScript每天必学之基础知识
Sep 17 Javascript
js实现楼层导航功能
Feb 23 Javascript
JS排序之快速排序详解
Apr 08 Javascript
React组件refs的使用详解
Feb 09 Javascript
对angularJs中2种自定义服务的实例讲解
Sep 30 Javascript
详解微信小程序中var、let、const用法与区别
Jan 11 Javascript
node.js制作一个简单的登录拦截器
Feb 10 Javascript
javascript中setTimeout和setInterval的unref()和ref()用法示例
Nov 26 #Javascript
浅谈jQuery中对象遍历.eq().first().last().slice()方法
Nov 26 #Javascript
javascript 原型链维护和继承详解
Nov 26 #Javascript
jquery提示效果实例分析
Nov 25 #Javascript
jQuery操作cookie方法实例教程
Nov 25 #Javascript
JavaScript常用验证函数实例汇总
Nov 25 #Javascript
JavaScript导出Excel实例详解
Nov 25 #Javascript
You might like
PHP编程之高级技巧——利用Mysql函数
2006/10/09 PHP
PHP中数字检测is_numeric与ctype_digit的区别介绍
2012/10/04 PHP
如何判断php mysqli扩展类是否开启
2016/12/24 PHP
EarthLiveSharp中cloudinary的CDN图片缓存自动清理python脚本
2017/04/04 PHP
php实现的错误处理封装类实例
2017/06/20 PHP
thinkPHP5框架闭包函数与子查询传参用法示例
2018/08/02 PHP
ThinkPHP5框架中使用JWT的方法示例
2020/06/03 PHP
JS与框架页的操作代码
2010/01/17 Javascript
ext jquery 简单比较
2010/04/07 Javascript
ASP.NET中基于JQUERY的高性能的TreeView补充
2011/02/23 Javascript
在jQuery中 常用的选择器介绍
2013/04/16 Javascript
Jquery 例外被抛出且未被接住原因介绍
2013/09/04 Javascript
浅析IE10兼容性问题(frameset的cols属性)
2014/01/03 Javascript
JavaScript声明变量名的语法规则
2015/07/10 Javascript
javascript中对变量类型的判断方法
2015/08/09 Javascript
js实现模拟银行卡账号输入显示效果
2015/11/18 Javascript
jquery对table做排序操作的实例演示
2017/08/10 jQuery
十分钟带你快速了解React16新特性
2017/11/10 Javascript
轻量级JS Cookie插件js-cookie的使用方法
2018/03/22 Javascript
jquery.pagination.js分页使用教程
2018/10/23 jQuery
vue自定义指令实现方法详解
2019/02/11 Javascript
webpack proxy 使用(代理的使用)
2020/01/10 Javascript
Json实现传值到后台代码实例
2020/06/30 Javascript
Python基于pandas实现json格式转换成dataframe的方法
2018/06/22 Python
菲律宾旅游网站:Expedia菲律宾
2017/10/11 全球购物
日本最大的彩色隐形眼镜销售网站:CharmColor
2020/09/09 全球购物
Android面试题附答案
2014/12/08 面试题
教师自荐信
2013/12/10 职场文书
汽车装潢店创业计划书范文
2014/02/05 职场文书
敬老模范事迹
2014/05/21 职场文书
销售提升方案
2014/06/07 职场文书
社区党员公开承诺书
2014/08/30 职场文书
2015年圣诞节活动总结
2015/03/24 职场文书
战马观后感
2015/06/08 职场文书
《小小的船》教学反思
2016/02/18 职场文书
解析python中的jsonpath 提取器
2022/01/18 Python