5

I have a class

function Man(){...}

Man.drinkBeer = function(){...}

I need to inherit SuperMan from Man. And I still want my Superman be able to drink some beer.

How can I do that?

4

2 に答える 2

6
Object.setPrototypeOf(SuperMan, Man);

これにより、派生関数の内部__proto__プロパティが基本関数に設定されます。
したがって、派生関数は基本関数からすべてのプロパティを継承します。

これは、 ではなく、関数自体に影響することに注意してくださいprototype

はい、紛らわしいです。

をサポートする既存のブラウザはありませんsetPrototypeOf()。代わりに、非標準の (しかし機能する) 代替手段を使用できます。

SuperMan.__proto__ = Man;
于 2013-10-16T18:55:27.973 に答える