本文共 877 字,大约阅读时间需要 2 分钟。
两者的区别:
express只能使用语法来向外暴露变量
eg:express.xxxx = xxxx;
module.express 既可以通过语法,也可以直接赋值一个对象
eg: module.express.xxxx = yyyy;
module.express = {xxx : yyy};
看下面的例子:
01.js的代码如下
function Person(name , age, sex) { //这里构建了个人 this.name = name; //属性name this.age = age; //属性age this.sex =sex; //属性sex};Person.prototype = { eat: function () { //添加了个吃的函数 console.log(this.name + "在吃饭"); }};exprots = Person; //使用exprots暴露
02.js代码片段:
let Person = require("./01.js"); // require 接收 01.jslet P = new Person("李小花",20,"女"); //这里新建一个对象人 赋予属性console.log(P); //打印
运行你会发现报错
这是为什么呢?
因为 你直接用express直接输出一些东西他没办法去输出,比如 ,你输出 一个变量,一个函数,一个自变量对象 它都可以输出。
但是你如果想输出一个类或者对象,那肯定就不行了。
而如果你想输出类,这时候就可以用module.express输出
将上面01.js的代码片段最后一行修改为
module.exprots = Person;
这时候运行你就发现一切ok!