代码之家  ›  专栏  ›  技术社区  ›  Robin Rodricks

MovieClip名称是否保留了“_”前缀?

  •  0
  • Robin Rodricks  · 技术社区  · 16 年前

    是否可以使用 “_”下划线前缀 为了你自己 电影剪辑名称? (AS2)

    即,您能将创建/附加的MovieClip命名为“_feature”或“_bug”吗?

    通常,这是为 内部属性 喜欢 _x _visible .

    4 回复  |  直到 16 年前
        1
  •  2
  •   fenomas    16 年前

    “_”前缀没有技术意义——你可以用它来命名MovieClips、文本字段或任何其他你喜欢的变量或方法。

    按照惯例,“内置”属性的名称过去很常见(如 _x , _visible 等)从underbar开始,但他们在v6或v7以及许多后来的属性周围停止了这样做( filters , transform 此外,他们已经使用(我相信在AS3中仍然使用)多个下划线作为内部名称,他们不希望人们绊倒(比如 __proto__ ).

    以前也有一个相当普遍的惯例 $ 对于旨在私有的属性或方法,因为声明它们是私有的没有任何效果。你在组件中经常看到这一点。

        2
  •  1
  •   James Hay    16 年前

    是的,这很好。我不确定你是否应该这样做,但如果你有理由这样做,它就不会出错。我倾向于保留_作为类私有成员的前缀。

        3
  •  0
  •   Robin Rodricks    16 年前

    是的,可以使用MovieClip名称,如 _霉菌 ,您可以静态引用它 this._myclip 或者也是动态的。 this["_"+"myclip"]

        4
  •  0
  •   bgw rmribeiro    16 年前

    这很好,但正确的做法是使用“ “仅适用于内部、私有/受保护的变量,然后编写getter和setter,而不使用” ".

    如:

    private var _word:String = "something"
    
    public function get word():String {
         return _word
    }
    
    public function set word(a_word:String):void {
         _word = a_word
    }
    

    有点冗长,但它是一个很好的API。

    推荐文章