最近在學習nodejs,就是因為它比較輕便,並發量大,上手快。由於以前一直在做C#的后端,沒有接觸過javascript,所以還得慢慢學習之。
nodejs所用的是javascript語言,它沒有如C#語言一樣正規正矩,倒是用起來還是比較方便。
要學習一門語言的初端,就要先學習其語法。今天學習nodejs的類型定義方式,以及怎樣導出模塊被其他js文件require調用。
上代碼:
//在nodejs中,類型定義就像定義函數一樣,其實該函數就是Student類的構造函數 var Student=function(){ //如果需要定義該類對象的字段、方法等,需加上this關鍵字,否則就認為是該函數中的臨時變量 this.Name="張三"; this.Age=21; //定義對象方法 this.show=function(){ console.log(this.Name+' '+this.Age); }; }; //類的成員方法也可以在構造方法外定義,需加上prototype關鍵字,否則就認為是定義類方法(靜態方法) Student.prototype.showName=function(){ console.log(this.Name); }; Student.prototype.showAge=function(){ console.log(this.Age); }; //定義類方法(類的靜態方法,可直接通過類名訪問) Student.showAll=function(name,age){ console.log("showAll "+name+' '+age); }; //定義類的靜態字段 Student.TName="李四"; //導出Student類,使其他js文件可以通過require方法類加載該Student模塊 module.exports=Student;
其他js文件使用Student模塊的代碼示例:
//使用require方法加載Student模塊 var student=require('./Student'); //調用類方法 student.showAll("張思",23); //展現類靜態字段 console.log(student.TName); student.TName="王武"; console.log(student.TName); //實例化類對象 var stu=new student(); stu.show(); stu.showName(); stu.showAge();
執行結果:
"D:\Program Files (x86)\JetBrains\WebStorm 9.0.1\bin\runnerw.exe" "C:\Program Files\nodejs\node.exe" T4Express.js showAll 張思 23 李四 王武 張三 21 張三 21 Process finished with exit code 0
