原型继承。这个简单的例子有什么不对?

原型继承。这个简单的例子有什么不对?

问题描述:

function a(){ 
     this.testing = 'testing'; 
    } 

    function b(){ 

    } 

    b.prototype = new a(); 



    console.log(b.testing); 

控制台显示未定义,而不是“测试”。我究竟做错了什么?原型继承。这个简单的例子有什么不对?

+0

单词Prototypal +1。 – corsiKa 2011-03-28 03:18:22

您还没有创建'b'的实例。

var bInstance = new b(); 
console.log(bInstance.testing); 

换句话说,原型的属性只出现在b类型的对象,而不是在b()构造函数本身。

+0

那正是它是什么。谢谢!所以告诉我,我必须等9分钟才能接受你的答案。那么就做吧。 – 2011-03-28 03:12:05

+1

我刚刚注意到你的变量听起来像“新手”,当你说出它 - 也许我需要一些睡眠。 – corsiKa 2011-03-28 03:25:07

+0

哇,你说得对。我想我会编辑这个名字,所以听起来不像我是卑鄙的:D – david 2011-03-28 03:29:54