zoukankan      html  css  js  c++  java
  • node.js基础:模块的创建和引入

      模块可能是一个文件,也可能是包含一个或多个文件的目录。如果模块是个目录,node.js通常会在这个目录下找一个叫index.js的文件作为模块的入口。

      典型的模块是一个包含exports对象属性定义的文件,这些属性可以是任意类型的数据,比如字符串、对象和函数。

      创建一个模块 

    //person.js
    var name = 'lbs';
    var age = 10;
    function sayName(){
    	console.log( name );
    }
    function sayAge(){
    	console.log( age );
    }
    exports.sayName = sayName;
    exports.sayAge = sayAge;
    

       引入一个模块

    //index.js
    var person = require('./person');
    person.sayName();
    person.sayAge();
    

       require函数以要用的模块的路径为参数。

       引入一个以 ./ 开头的模块意味着:当前文件和被引用的文件属于同一级目录(这里的person.js 和 index.js 位于同一个目录下)。

       引入时 .js 扩展名可以忽略。

       如果需要从模块中得到单个变量、函数或者对象,用module.exports

    //person.js
    var Person = function(){
    	this.name = 'lbs';
    	this.age = 10;
    };
    Person.prototype = {
    	sayName: function(){
    		console.log( this.name );
    	},
    	sayAge: function(){
    		console.log( this.age );
    	}
    };
    module.exports = Person;
    
    //index.js
    var Person = require('./person');
    var person = new Person();
    person.sayName();
    person.sayAge();
    

       如果模块是目录,在模块目录中定义模块的文件必须被命名为index.js。除非在这个目录下一个叫package.json的文件里特别指明。要指定一个取代index.js的文件,package.json文件里必须有一个用JavaScript对象表示法(JSON)数据定义的对象,其中有一个名为main的键,指明模块目录内主文件的路径。

         exports是模块的公开接口

       require从外部获取一个模块接口(获取的模块是exports对象)

         

  • 相关阅读:
    absolute 导致点击事件无效
    windows 下的命令操作
    localStorage 设置本地缓存
    css渐变
    vue-cli webpack全局引入jquery
    #024分段函数。
    #023单词接龙1(字符串)(女友)
    #022 Python 实验课
    #021 Java复习第一天
    #020PAT 没整明白的题L1-009 N个数求和 (20 分)
  • 原文地址:https://www.cnblogs.com/eyeear/p/4733570.html
Copyright © 2011-2022 走看看