最近在学习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

  

 

 posted on 2016-12-07 12:24  F风  阅读(9768)  评论(0编辑  收藏  举报