来源于慕课网课程:http://www.imooc.com/video/6701 (视频)

模块的流程图如下:

做一个学校的模块示例
建一个学生的js studet.js
function add(student){
console.log("add student:"+student);
}
//暴露公开api
exports.add = add;

  

建一个老师的js teacher.js
function add(teacher){
console.log("add teacher:"+teacher);
}
//暴露公开api
exports.add = add;

  

建一个班级的js klass.js
// 导入老师学生模块
var student = require('./student');
var teacher = require('./teacher'); // 指定一个老师
teacher.add('Scott'); // 添加两个学生
student.add('白富美');
student.add('高富帅');
function add(teacherName,students){
teacher;
students.forEach(function(item,index){
student.add(item);
});
} // 暴露公开api
exports.add = add;

  

新建一个index.js
// 导入班级模块
var klass = require('./klass'); // 把学校暴露出去,传入班级
exports.add = function(klasses){
// 遍历班级
klasses.forEach(function(item,index){
var _klass = item; //拿到具体班级
var teacherName = item.teacherName;// 拿到老师名字
var students = item.students; // // 拿到学生名字
klass.add(teacherName,students);
});
};
// klass.add('Scott',['白富美','高富帅']);

  

建好之后在git bash 中进入js所在目录然后输入 node index

到此为止学校这个模块就完成了。

最新文章

  1. CALayer基本介绍与常见属性
  2. js6类和对象
  3. 几款web开发常用jquery特效代码
  4. Android_ProgressBar
  5. ExecutorService 的理解与使用
  6. POJ 2387 Til the Cows Come Home(模板——Dijkstra算法)
  7. .NET Orm 性能测试
  8. [leetcode] 5.Longest Palindromic Substring-1
  9. c++ 调用 wmi 获取数据
  10. nginx 限速最容易理解的说明
  11. Linux命令之ll
  12. 核态获取PsLoadedModuleList地址的稳定方法
  13. java安全删除一个文件,防止工具恢复数据
  14. for循环案例
  15. A guess 解题报告
  16. 用迁移学习创造的通用语言模型ULMFiT,达到了文本分类的最佳水平
  17. Spring生态顶级项目说明
  18. 003 JTA的使用与理解
  19. VB中将INT型转换成STRING和从STRING转换成INT型的函数
  20. Qt容器类汇总说明

热门文章

  1. oracle-分区(笔记)
  2. select rows by values in a column from Dataframe
  3. 几张 ejabberd 架构部署图
  4. drone 学习六 发布部署&&集成私有容器仓库&&构建代码s3 保存
  5. php项目有负载,$_SERVER['HTTP_X_FORWARDED_FOR']函数在不同系统中获取到的值形式不一样,ios系统苹果手机只能获取到一个ip(113.87.214.xxx),而安卓手机获取到的是2个ip中间逗号隔开的形式(113.87.214.xxx , xxx.xxx.xxx.xxx)
  6. C# 6.0 新特性收集
  7. JAVA-Unit04: SQL(高级查询)
  8. ssi框架学习总结
  9. JVM内存管理之垃圾搜集器精解(让你在垃圾搜集器的世界里耍的游刃有余)
  10. 浅谈浅克隆(shallow clone)和 深克隆(deep clone)