Node.js继承中的静态类对象(《node.js开发实战详解》书中一些错误的改正)

今天气真好,最近挂掉一些面试之后心情略失落。

神马都是浮云,要永远做好世界第二。

不多提了,你问我心态为啥变好了。-------都是情怀,,。

嗯啊,最近在研究node。

别人问?你这水平还node...

哈哈哈,好伤心....

不多提了,言归正传。

神马模块化神马的先就不多讲了,就一个module.export和export区别,后者对象的属性属于前者,逆命题不成立。

还有util.inherits(A,B)这个API注意一下A只会继承B的原型方法,原型以外的不会继承。不是说原型中数据是共享的嘛,估计这个函数也就是创建一个引用啦。

好啦进入正题,《node.js开发实战详解》这本书还是挺面向入门者的,但是第二章看完之后,就觉得好像有些不对劲。

书中提到观察者模式,好像没有专门一节讲,一个例子在课后实战里...呃...目录里面确实没有观察者...唉这都是小问题。

这个静态类中还是发现了些小问题的:

这里是一个基类。person.js文件名。

/*定义person基类*/
module.exports=function(){
    this.name=‘person‘;
    this.sleep=function(){
        console.log(‘person sleep‘);
    }
    this.eat=function(){
        console.log(‘person eat‘);
    }
}

然后这里是一个派生类,student.js的文件名

var util=require(‘util‘);
var Person=require(‘./person‘);
function Student(){
    Person.call(this);
    util.inherits(Student,Person);
    this.study=function (){
        console.log(‘study person‘);
    }
}
var person=new Student();//其实主要说的是这里,书上是这么写的var person=new Person();呃明显不是啦,如果是的话还有Student()方法干嘛,摁就这么点问题。
exports.study=person.study;
exports.eat=person.eat;
exports.sleep=person.sleep;

然后是运行文件app.js。

var student =require(‘./student‘);
student.study();
student.eat();
student.sleep();

呃..这么快就说完了?恩吧,再看到别的问题再这下面更新。打个标:2015-4-13-16-46(逝者如斯夫,不舍昼夜。唉)

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。