1)Clyde Loboの答えとして、最初はいくつかあります。
var f = new foo();
f.bar();
2)consturctor
(特権)に関数を記述します。すべてのインスタンスが新しい関数を作成します。でメソッドが定義されている場合、すべてのインスタンスは同じのメソッドprototype
を共有します。prototype
var f1 = new foo(), // instance 1
f2 = new foo(); // instance 2
f1.privileged === f2. privileged // -> false , every instance has different function
f1.bar === f2.bar // -> true, every instance share the some function
3)this.bar() `を呼び出すことができます、次のようなコードbar2
:bar' by
function foo() {
this.property = "I'm a property";
this.privileged = function() {
// do stuff
};
}
foo.prototype.bar = function() { // defined a method bar
alert('bar called');
this.bar2(); // call bar2
};
foo.prototype.bar2 = function() { // defined a method bar2
alert('bar2 called');
};
var f = new foo();
f.bar(); // alert 'bar called' and 'bar2 called'
f.bar2(); // alert 'bar2 called'