首頁  >  文章  >  web前端  >  JavaScript命名空間是什麼?有什麼用?

JavaScript命名空間是什麼?有什麼用?

不言
不言原創
2019-01-14 16:08:224542瀏覽

命名空間在英文中稱為namespace,它是程式設計中的概念之一,存在著「命名空間」的概念可以避免名稱衝突,本篇文章我們就來看看JavaScript中命名空間的內容與用法。

JavaScript命名空間是什麼?有什麼用?

命名空間是什麼?

命名空間指的是一種排序機制,以便在「空間」中只有一個相同的名稱。

空間就像是一種容器。

例如,名字「湯姆」 可能指的是多個人,但透過為每個姓氏創建命名空間,我們可以區分哪個「湯姆」。

事實上,你可以知道到命名空間「上官」中的「湯姆」和「歐陽」中的「湯姆」是不同的人。

使用命名空間的好處

命名空間的主要目的是避免名稱衝突。

對於小規模程序,使用命名空間的好處可能不會太多。

但是,某種大規模的程序可能與其他程序,伺服器等有關。

在這種情況下,使用命名空間可以減輕程式設計師的負擔。

由於可以防止名稱衝突引起的問題,我們可以消除不必要的處理。

如何使用命名空間?

讓我們在JavaScript程式中實際引入命名空間的概念。

首先,來看一個不使用命名空間的簡單程式。

<html>
  <body>
    <script>
 
        function addition(num1,num2) {
            return num1+num2;
        }
 
        function multiplication(num1,num2) {
            return num1*num2;
        }
 
        var operation = addition(5,10);
        console.log(operation)
 
    </script>
  </body>
</html>

執行結果:15

在上面的程式碼中,我們先定義了一個加法的函數addition和一個乘法的函數multiplication。

然後,新增結果會儲存在全域變數中,並顯示在JavaScript控制台中。

傳遞給函數所新增的參數是5和10,因此在控制台上顯示15。

在上面的程式碼中,所有內容都作為全域變數存在。

因此,如果全域範圍中存在具有相同名稱的函數和變量,則會導致衝突。

接下來,我嘗試使用命名空間來改進上面的程式碼。

<html>
  <body>
    <script>
 
        var MYFUNCTIONS = {
 
            addition: function(num1,num2){
                return num1+num2;
            },
 
            multiplication: function(num1,num2){
                return num1*num2;
            }
        } 
 
        var operation = MYFUNCTIONS.addition(5,10);
        console.log(operation)
 
    </script>
  </body>
</html>

執行結果:15

在上面的程式碼中,唯一定義的全域變數是一個大寫的MYFUNCTION變數。

在其中我們定義加法和乘法函數。

藉由這樣做,我們建立了一個名為MYFUNCTION的空間,並在其中包含任意函數。

要在MYFUNCTION中呼叫函數,使用語法:MYFUNCTION.函數名稱。

透過寫MYFUNCTION.addition(5,10)來呼叫加法函數。

結果與前面的程式碼相同。

如何分層名稱空間?

最後,我們來介紹如何「層次化」命名空間。

這樣會很方便,因為可以透過分層管理更多函數和變數。

程式碼範例如下

<html>
  <body>
    <script>
 
        var MYAPPLICATION = {
 
            OPERATIONS: {
 
                addition: function(num1,num2){
                    return num1+num2;
                },
 
                multiplication: function(num1,num2){
                    return num1*num2;
                }
            },
 
            OTHER: {
 
                show: function(num1,num2){
                    console.log("Your numbers are " + num1 + " and " + num2);
                } 
            }
 
        } 
 
        MYAPPLICATION.OTHER.show(5,10);
 
    </script>
  </body>
</html>

執行結果:Your numbers are 5 and 10

在上面的程式碼中,我們將唯一的全域變數MYAPPLICATION分成多個空間。

在OPERATION空間中加入了addition函數和multiplication函數,在OTHER空間中包含了新的函數show。

在空間中建立空間使得分層和產生簡潔程式碼變得更加容易。

例如,要在OTHER空間中呼叫show函數,可以使用外部空間,內部空間和函數名稱等語法。

實際上,如果你寫MYAPPLICATION.OTHER.show(5,10),將會呼叫參數5和10中指定的show函數。

show函數將諸如「 Your numbers are參數1 and參數2 」之類的片語輸出到JavaScript控制台。

因此,結果顯示為Your numbers are 5 and 10。

這篇文章到這裡就全部結束了,更多精彩內容大家可以關注php中文網的其他欄位教學! ! !

#

以上是JavaScript命名空間是什麼?有什麼用?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn