2016-04-28 16 views
0

新しいクラスを作成せずにクラスにメソッドを追加する方法があるのだろうかと思います。拡張する新しいクラスを作成せずにクラスにメソッドを追加する方法。

たとえば、私はこのようなクラスを持っています。

class GithubApi { 
    constructor() { 
    } 
} 

基本的に機能的にはいくつかありますが、

ただし、この関数にメソッドを追加して拡張可能にしたいと考えています。

これを拡張せずに行う方法はありますか?

class GithubApiExtra extends GithubApi { 
    constructor() { 
    } 
} 

答えて

3

classあなたがクラスの前にやるだろうとあなたはまだ同じことを行うことができ、プロトタイプの構文糖である:いいえがあるオブジェクトのjavascript yourObject.youfun=new function(a,b){ return a*b };

にメソッドを追加するため

GithubApi.prototype.method = function() { 
    ... 
}; 
-1

こんにちはJavaScriptのクラス。あるオブジェクトは、メソッド

function Person() 
     { 
     var T=new Object(); 
     T.name='Po'; 
     T.age=12; 
     return T; 
     } 

などのアップデートを形成constructored: をしかし、クロム42 +でサポートECMASCRIPT 6 クラスは、Firefox 45 +、 IEとOperaはそれをサポートしていません13+エッジのクラスがあります

class Polygon { 
    constructor(height, width) { 
    this.height = height; 
    this.width = width; 
    } 
} 

ポリゴンにメソッドを追加=

Polygon.prototype.fun= function(a){return a*a}; 
+0

JavaScriptにクラス構文があります:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Classes – Domenic

+0

申し訳ありません...私はそれを知っていませんが、私はECMA6(2015)に来ると思います[リンク] https://en.wikipedia.org/wiki/ECMAScript#6th_Edition –

関連する問題