在下面的代码中,我想有一个计数器来跟踪创build的Person对象的数量。 这段代码不是这样做的,我怎么做到的? function Person(){ this.name = "Peter"; this.counter = this.counter + 1; alert(this.counter); } Person.prototype.counter = 0; var p1 = new Person; var p2 = new Person;
我不是那种dynamic的编程语言,但是我已经写了我的一些JavaScript代码。 我从来没有真正理解这个基于原型的编程,有没有人知道这是如何工作的? var obj = new Object(); // not a functional object obj.prototype.test = function() { alert('Hello?'); }; // this is wrong! function MyObject() {} // a first class functional object MyObject.prototype.test = function() { alert('OK'); } // OK 我记得有一段时间我和人们讨论过很多的话题(我不确定自己在做什么),但据我所知,没有一个阶级的概念。 这只是一个对象,这些对象的实例是原始的克隆,对吧? 但是这个.prototype属性在JavaScript中的确切目的是什么? 它与实例化对象有什么关系? 编辑 这些幻灯片确实帮助我们理解了这个话题。