本篇文章帶給大家的內容是關於Node.js自訂模組中內容的介紹(附程式碼),有一定的參考價值,有需要的朋友可以參考一下,希望對你有幫助。
匯出
#方法一:
exports .屬性名稱= 值/變數;
注意:可以導出多個exports.屬性名稱= 值/變數;
主模組/ 引入模組.js
const myModule = require("./自定义模块.js"); console.log(myModule.username); console.log(myModule.userage); myModule.getInfo(); console.log(myModule.address);
自定義模組.js
// 自定义模块 // =========1.变量============ let username = "Jack"; let userInfo = {age:10, grade:"H5"}; // 导出/ 暴露内容 exports.username = username; exports.userObj = userInfo; //直接赋值 // =========2.变量============ exports.userage = 18; // =========3.方法============ exports.getInfo = function () { console.log(userInfo,username); } //另一个方法表示 module.exports.address = "北京"; //module.exports 等同于exports console.log(module.exports === exports);//输出true
方法二:
module.exports = 物件;
moudule.exports = 類別/建構子/函數;
注意:寫多個module.exports = 對象,會覆寫上一個,修改其的值;
導出的類別/建構子必須透過new 下進行導出,物件不能new;
範例:
自訂模組2-2.js
//自定义模块2 module.exports = { user:"丽丽", tag: 100 } //方法 //此时user和tag输出的为undefined,因为这个exports方法会直接覆盖上面的exports module.exports = function () { console.log("自定义模块2");//主模块调用:myModule2()或new myModule2() } // 导出===类(构造函数) module.exports = class UserName{ // console.log("我是个类/构造函数");//导进的模块必须通过new 下进行导出,对象不能new } //这样不能进行导出,相当于又声明了一个exports,exports添加属性和方法是可以进行导出,修改属性或者方法就不能进行导出 // exports = { // a:100 // }
主模組.js
// 自定义模块2 console.log("=============自定义模块2==============="); const myModule2 = require("./自定义模块2-2.js"); // console.log(myModule2); console.log(myModule2.user); console.log(myModule2.tag); // myModule2();//还可以new myModule2()表示 new myModule2();
範例:計算圓、正方形的面積和周長
main.js
// 引入模块 let square = require("./square.js"); let circle = require("./circle.js"); // 计算正方形的面积和周长 let squareClass = new square(10); console.log("正方形的面积是:"+squareClass.area()); console.log("正方形的周长是:"+squareClass.circumference()); // 计算圆的面积和周长 console.log("圆的面积是:"+circle.area(5)); console.log("圆的周长是:"+circle.circumference(5));
square.js
//计算正方形的面积和周长,使用模块 module.exports = class { constructor(w){ this.w = w; } area(){ return this.w ** 2; } circumference(){ return this.w * 4; } }
circle.js
//计算圆的面积和周长 exports.area = function (r) { return Math.PI * (r ** 2); } exports.circumference = function (r) { return 2 * Math.PI *r; }
相關推薦:
以上是Node.js自訂模組中內容的介紹(附程式碼)的詳細內容。更多資訊請關注PHP中文網其他相關文章!