node.js利用javascript中構造函數繼承,實現模塊調用

//----------------------server.js-------------  
var http = require('http');
var Teacher = require('./teacher');
http.createServer(function(require,response){
response.writeHead(200,{'Content-Type' : 'text/html; charset=utf-8'});
if (require.url !== '/favicon.ico') {//清除第2次訪問
console.log('訪問');
var teacher = new Teacher('張明明的老師',18,1,'數學');
teacher.enter(response);
teacher.teach(response);
response.end();
}
}).listen(8888);
console.log('Server running at http://127.0.0.1:8888');

//--------------User.js--------------  
function User(name,age,id){
this.name = name;
this.age = age;
this.id = id;
}
User.prototype.enter = function(res){
console.log(this.name + '進入圖書館');
res.write(this.name + '進入圖書館');
}
module.exports = User;

//---------------Teacher.js---------  
var User = require('./user');

function Teacher(name,age,id,job){

//Teacher通過apply繼承User的屬性

User.apply(this,arguments);
this.job = job;

}

//Teacher繼承User的方法

Teacher.prototype = new User();
Teacher.prototype.teach = function(res){
res.write(this.name + '講' + this.job)
}
module.exports = Teacher;
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章