0

https://github.com/mozilla/BrowserQuest/blob/master/server/js/lib/class.jsをプライベート継承可能なプロパティといくつかのゲッターとセッターと共に使用したいと考えています。

基本的には、ゲッター/セッターでプライベート プロパティを変更し、サブクラスでセッター、ゲッター、およびプライベート プロパティを継承する必要があります。これは私がこれまでに得たものです:

var Person = Class.extend({
    init: function( name )
    {
        var name = "~";

        this.myName = name;

        return {
            set myName( value )
            {
                name = value + " +?";
            },
            get myName()
            {
                return name + "^^^^^^^^^";
            }
        }
    }
});
var c  = new Person( "cheese" );
console.log(c.myName);
c.myName = "zoom";
console.log(c.myName);

トレース: 未定義のズーム

奇妙なことに、私のエディター (Webstorm) は c.myName をセッター/ゲッターと見なしますが、コンパイラはそれを未定義のパブリック プロパティと見なします:(

どんな助けでも大歓迎です。これは Nodejs ですが、問題は JavaScript にあると思います。

4

1 に答える 1