Heim > Web-Frontend > js-Tutorial > Nodejs-Modularisierung: Nodejs-Berechnungspermutationen und -kombinationen (Code)

Nodejs-Modularisierung: Nodejs-Berechnungspermutationen und -kombinationen (Code)

不言
Freigeben: 2018-08-15 16:23:46
Original
2982 Leute haben es durchsucht

Der Inhalt dieses Artikels befasst sich mit der Modularisierung von NodeJS: Die Berechnungspermutation und -kombination (Code) von NodeJS hat einen bestimmten Referenzwert. Ich hoffe, dass er für Sie hilfreich ist.

Verwenden Sie nodejs, um Permutationen und Kombinationen als Beispiel zu berechnen:

Permutationen und Kombinationen erfordern Fakultät, also erstellen Sie neue main.js und jiecheng.js Dateien und pailiezuhe.jsDatei (da ich Modularität lerne, habe ich zwei Dateien erstellt)

Kopieren Sie den folgenden Code in jiecheng.js, mit detaillierten Kommentaren

var abc = 100;

// 计算阶乘的方法
function jiecheng(n){
    var con = 1;
    for(n;n>0;n--){
        con = con*n;
    } 
    return con;
}

// module.exports 表示本js文件所导出的内容,默认是一个空对象
// 通过给modul.exports赋值可以设置本js文件所导出的内容
module.exports = jiecheng;
Nach dem Login kopieren

Der letzte Schritt oben ist der Export. Die aktuelle Fakultätsmethode ist

. Wenn Sie also pailiezuhe.js aufrufen, wird die Fakultätsmethode zuerst

pailiezuhe.js-Code importiert:

console.log(123);

// 使用require可以在一个js文件中导入另一个js文件
// 参数表示要导入的js文件,内容是要导入的js文件的路径(可以是相对路径也可以是绝对路径)
// 返回值是导入的js文件中所导出的内容

//  ./表示本js文件所在的目录
var jc = require("./jiecheng.js");


// 使用require导入一个js文件仅仅是将这个js文件导出的内容导入,然后赋值给一个变量,并不会导入这个js文件中的其他内容,也就是说这两个js文件的作用域是隔离的
// console.log(abc);

function pailie(n,m){
    return jc(n)/jc(n-m);
}

function zuhe(n,m){
    return jc(n)/(jc(m)*jc(n-m));
}
// 使用module.exports只能导出一个内容,如果需要导出多个内容,可以把这些内容封装成一个对象,然后导出这个对象
// module.exports = {
//     pailie:pailie,
//     zuhe:zuhe
// };
// 或者是给exports添加属性也是一样
module.exports.pailie = pailie;
module.exports.zuhe = zuhe;
Nach dem Login kopieren

main.js-Code

// 当代码量很大时,可以将代码分散在多个js文件中,每个js文件单独实现一个小功能,这些js文件共同组成一个完整的大功能

// 在浏览器环境中,可以通过多个script标签导入多个js文件.但是这种合并代码的方法有一下缺点:
// 1,多个js文件的导入必须按照依赖关系先后导入
// 2,使用script标签导入的多个文件本质上是拼接成了一个js文件,所以这些js文件运行时都处于同一个全局作用域,那么这些js文件中不能使用同名的全局变量.


// -------------------------------------------------------------------------------

// 在nodejs中也可以实现将不同的功能写入不同的js文件,在某个js文件中需要什么功能就导入哪个功能的js文件
// 这叫做nodejs的模块化

// 当 第一次 导入某个js文件时,这个js文件会执行并获得导出内容,如pailiezuhe.js里console.log()会执行
var plzh = require("./pailiezuhe.js");

// 某个js文件运行得到导出内容之后,导出的内容会被缓存起来,下次再导入这个js文件时,就会直接获得上次的导出结果,不再运行js文件,例如下面这两行如果不注释也不会执行pailiezuhe.js的console
// var q = require("./pailiezuhe.js");
// var w = require("./pailiezuhe.js");

var n = 10;
var m = 4;
console.log(plzh.pailie(n,m));
console.log(plzh.zuhe(n,m));
Nach dem Login kopieren

Verwandte Empfehlungen:

Einfache Erstellung des NodeJS-Servers (3): Code modularization_node.js

nodejs erfordern ein Modul (Dateimodul/Kernmodul) und eine Pfadeinführung_Grundkenntnisse

Das obige ist der detaillierte Inhalt vonNodejs-Modularisierung: Nodejs-Berechnungspermutationen und -kombinationen (Code). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage