ホームページ >ウェブフロントエンド >jsチュートリアル >静的変数は JavaScript でどのように宣言され、使用されますか?

静的変数は JavaScript でどのように宣言され、使用されますか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-12-06 17:14:14972ブラウズ

How are Static Variables Declared and Used in JavaScript?

JavaScript での静的変数の宣言

Java などのオブジェクト指向プログラミング言語では、静的変数は、クラスに属し、すべてのクラスで共有されるメンバーを宣言するためによく使用されます。そのクラスのインスタンス。この記事では、この概念が JavaScript でどのように実装されるかを説明します。

ES5 の静的変数

プロトタイプベースの継承モデルに従う JavaScript では、関数はコンストラクターとして機能します。静的プロパティは、関数オブジェクトに関連付けられているため、コンストラクター関数自体内で定義できます。

function MyClass() {
  // Private variable
  var privateVariable = "foo";

  // Public variable
  this.publicVariable = "bar";

  // Public method
  this.privilegedMethod = function() {
    alert(privateVariable);
  };
}

// Static variable shared by all instances
MyClass.staticProperty = "baz";

この例では、staticProperty は MyClass 関数内で定義されており、クラスのすべてのインスタンス間でアクセスできます。

ES6 クラスの静的変数

ES6 では、クラスを宣言するための class キーワードが導入されました。プロトタイプベースの継承のための構文シュガー。静的プロパティと静的メソッドは、static キーワードを使用して定義できます。

class MyClass {
  constructor() {
    // Private variable
    const privateVariable = 'private value';

    // Public property
    this.publicVariable = 'public value';

    // Public method with access to private variable
    this.privilegedMethod = function() {
      console.log(privateVariable);
    };
  }

  // Prototype methods
  publicMethod() {
    console.log(this.publicVariable);
  }

  // Static property shared by all instances
  static staticProperty = 'static value';

  // Static method
  static staticMethod() {
    console.log(this.staticProperty);
  }
}

ここでは、staticProperty と staticMethod は MyClass クラスの静的メンバーとして定義されているため、インスタンスを作成せずにアクセスできるようになります。

以上が静的変数は JavaScript でどのように宣言され、使用されますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。