• 02慕课网《进击Node.js基础(一)》——CommonJs标准


    是一套规范管理模块

    每个js 为一个模块,多个模块作为一个包

    node.jsCouchdb是对其的实现;

    不同于jQuery

    模块:定义、标识、引用(地址/模块名称)

    模块类型:

    核心模块http fs path

    文件模块var util=require(‘./util.js’)

    第三方模块npm  var promise=require(‘bluebird’)

    模块的流程:

    创建模块 teacher.js  function foo(){}

    导出模块 exports.add=function(){}  foo

    加载模块 另一个js文件var teacher=require(‘./teacher.js’)

    使用模块 teacher.add(‘wangcf’)

    源码:

    student.js

    function add(student){
        console.log('Add Student: ' + student)
    }
    //通过expots对象暴露方法
    exports.add=add

     teacher.js

    function add(teacher){
        console.log('Add Teacher: ' + teacher)
    }
    //通过expots对象暴露方法
    exports.add=add

    klass.js

    //require引用模块
    var student = require('./student')
    var teacher = require('./teacher')
    
    function add(teacherName,students){
        teacher.add(teacherName)
        
        students.forEach(function(item,index){
            student.add(item);
        })
        
    }
    ///两者作用相同
    //传统的模块实例,是module.exports的辅助方法
    exports.add = add
    //有这个会忽略exports特别的对象类型,真实存在的东西
    //module.exports = add

    index.js

    var klass = require('./klass');
    
    klass.add("教师",['学生1','学生2'])
    
    exports.add = function(klasses){
        klasses.forEach(function(item,index){
            var _klass = item;
            var teacherName = item.teacherName;
            var students = item.students;
            
            klass.add(teacherName,students)
        })
    }
  • 相关阅读:
    JS元素分组统计
    并发工具类
    【Spring-Cloud】mall eureka微服务模块建立
    【Spring-Cloud】mall父工程建立
    【MySQL】创建函数和存储过程,批量插入大数据
    【JAVA】http 状态
    【JAVA】如何写好代码
    【Docker】dockerfile,支持jdk8、 sshd、 python3.6
    【Hadoop】MapperReduce WordCount 代码示例
    【Hadoop】YARN 完全分布式配置
  • 原文地址:https://www.cnblogs.com/-beauTiFul/p/8981856.html
Copyright © 2020-2023  润新知