ホームページ ウェブフロントエンド jsチュートリアル JavaScript で名前空間を作成するさまざまな方法

JavaScript で名前空間を作成するさまざまな方法

Apr 02, 2021 am 09:45 AM
javascript 名前空間

JavaScript で名前空間を作成するさまざまな方法

#JavaScript では、グローバル変数によって名前の競合が頻繁に発生します。場合によっては、変数の書き換えも想像した順序と異なることがあります。そのため、グローバル変数名の競合を回避するには、名前空間を作成することが最適な解決策となります。

1. クロージャ (Closure) とオブジェクトによる実装

すべての変数とメソッドをクロージャ内で宣言し、

JSON を渡します。 Object パブリック インターフェイスを返します:

var NameSpace = NameSpace || {};
 NameSpace.Hello = (function() {   
 //待返回的公有对象  
  var self = {};   
  //私有变量或方法   
  var name = 'world';  
   //公有方法或变量   
   self.sayHello = function(_name) {    
    return 'Hello ' + (_name || name);  
     } ;   
     //返回的公有对象   
     return self; 
}());
ログイン後にコピー

2. JSON オブジェクトを通じてオブジェクトを作成します。コードは次のとおりです:

var NameSpace = NameSpace || {}; 
NameSpace.Hello = {     name: 'world'   , sayHello: function(_name) {   
  return 'Hello ' + (_name || this.name);  
   }
 };
ログイン後にコピー

3. 関数を通じて作成: (より複雑)

これは、

関数# を宣言することによる、比較的一般的な記述方法です。 ## が実装され、関数に初期変数を設定し、<div class="code" style="position:relative; padding:0px; margin:0px;"><pre class='brush:php;toolbar:false;'>var NameSpace = NameSpace || {}; /* Function */ NameSpace.Hello = function() { this.name = &amp;#39;world&amp;#39;; }; NameSpace.Hello.prototype.sayHello = function(_name) { return &amp;#39;Hello &amp;#39; + (_name || this.name); }; var hello = new NameSpace.Hello(); hello.sayHello();</pre><div class="contentsignin">ログイン後にコピー</div></div>4 のようにパブリック メソッドを

prototype

に書き込みます。関数を通じて作成します: (もっと簡潔に)

var NameSpace = NameSpace || {}; 
NameSpace.Hello = new function() {   
    var self = this;   
    var name = &#39;world&#39;;   
    self.sayHello = function(_name) {    
     return &#39;Hello &#39; + (_name || name);  
      }; 
 };
ログイン後にコピー
推奨: 「

2021 js 面接の質問と回答 (大規模な概要)

以上がJavaScript で名前空間を作成するさまざまな方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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

ホットな記事タグ

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

WebSocket と JavaScript を使用してオンライン音声認識システムを実装する方法 WebSocket と JavaScript を使用してオンライン音声認識システムを実装する方法 Dec 17, 2023 pm 02:54 PM

WebSocket と JavaScript を使用してオンライン音声認識システムを実装する方法

WebSocket と JavaScript: リアルタイム監視システムを実装するための主要テクノロジー WebSocket と JavaScript: リアルタイム監視システムを実装するための主要テクノロジー Dec 17, 2023 pm 05:30 PM

WebSocket と JavaScript: リアルタイム監視システムを実装するための主要テクノロジー

WebSocketとJavaScriptを使ったオンライン予約システムの実装方法 WebSocketとJavaScriptを使ったオンライン予約システムの実装方法 Dec 17, 2023 am 09:39 AM

WebSocketとJavaScriptを使ったオンライン予約システムの実装方法

JavaScript と WebSocket を使用してリアルタイムのオンライン注文システムを実装する方法 JavaScript と WebSocket を使用してリアルタイムのオンライン注文システムを実装する方法 Dec 17, 2023 pm 12:09 PM

JavaScript と WebSocket を使用してリアルタイムのオンライン注文システムを実装する方法

JavaScript と WebSocket: 効率的なリアルタイム天気予報システムの構築 JavaScript と WebSocket: 効率的なリアルタイム天気予報システムの構築 Dec 17, 2023 pm 05:13 PM

JavaScript と WebSocket: 効率的なリアルタイム天気予報システムの構築

簡単な JavaScript チュートリアル: HTTP ステータス コードを取得する方法 簡単な JavaScript チュートリアル: HTTP ステータス コードを取得する方法 Jan 05, 2024 pm 06:08 PM

簡単な JavaScript チュートリアル: HTTP ステータス コードを取得する方法

JavaScript で HTTP ステータス コードを簡単に取得する方法 JavaScript で HTTP ステータス コードを簡単に取得する方法 Jan 05, 2024 pm 01:37 PM

JavaScript で HTTP ステータス コードを簡単に取得する方法

JavaScript と WebSocket: 効率的なリアルタイム画像処理システムの構築 JavaScript と WebSocket: 効率的なリアルタイム画像処理システムの構築 Dec 17, 2023 am 08:41 AM

JavaScript と WebSocket: 効率的なリアルタイム画像処理システムの構築

See all articles