簡體   English   中英

如何在繼承的javascript類中聲明私有函數

[英]How to declare private function in inherited javascript class

我真的很喜歡這篇文章中描述的javascript類繼承。 例:

var Person = Class.extend({

  init: function(isDancing){
    this.dancing = isDancing;  
  },  
  dance: function(){
    return this.dancing;
  }

});

在這種情況下,舞蹈是公共功能。 我想聲明私有函數“ walk”。 但是如何以及在哪里? 我敢肯定,對大多數人來說這很容易。

謝謝。

這是制作私有函數的方法,但是卻失去了原型制作的能力:

var Person = Class.extend((function () {
    var dancing;

    // private functions
    function dance () {
        return dancing;
    }

    // public functions
    return {
        init: function(isDancing) {
            dancing = isDancing;  
        }
    }
}())); // <-- immediate invocation

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM