搜尋
首頁web前端js教程JavaScript 中如何檢查物件是否存在?

JavaScript 中如何检查对象是否存在?

該物件包含 JavaScript 中的屬性及其值。我們可以使用大括號 ({}) 來建立一個物件。它與變數類似,但我們分配一個物件值,而不是向變數分配數字、字串或布林值。

因此,在本教程中,我們將學習檢查 JavaScript 中的物件是否存在。簡而言之,我們必須學習檢查物件變數是否存在的方法。

使用 try-catch 語句

通常,我們使用try-catch語句來處理JavaScript中的錯誤。我們可以嘗試在 try 區塊中存取該對像或其屬性,如果程式沒有找到該對象,則會引發錯誤並轉到 catch 區塊,而不會完成 try 區塊程式碼的執行。

文法

使用者可以依照下列語法使用try-catch區塊來檢查物件是否已定義。

try {
   let value = object.prop;
   // object is defined
} catch {
   // object is not defined
}

我們在上面的語法中存取 try 區塊中未定義的物件。

範例

在下面的範例中,我們使用了 try-catch 語句。在 try 區塊中,我們嘗試存取物件的 prop 屬性,該屬性未定義。

使用者可以在輸出中觀察到,執行控制會從 catch 區塊中列印訊息,但在存取未定義的物件時不會從 try 區塊中列印訊息,這將引發錯誤。

<html>
<body>
   <h3>Using the <i>try-catch block</i> to check if the object is defined in JavaScript.</h2>
   <p id = "output"> </p>
   <script>
      let output = document.getElementById("output");
      try {
         let value = object.prop;
         output.innerHTML += "The object is successfully defined!"
      } catch {
         output.innerHTML += "The object is not defined!"
      }
   </script>
</body>
</html>

使用 typeof 運算子

開發人員可以使用typeof運算子來檢查變數的類型。在這裡,我們將檢查變數類型是否等於“物件”,這意味著該物件存在;否則,如果我們得到“未定義”或任何其他資料類型,則表示該變數不是物件類型。

文法

使用者可以依照下列語法使用 typeof 運算子檢查物件是否存在。

let objType = typeof obj === ‘object’;

在上面的語法中,嚴格相等運算子符合 typeof 運算子的傳回值和「object」字串。

範例

在下面的範例中,我們建立了 obj 物件。當使用者單擊該按鈕時,它會呼叫 isObjectDefined() 函數。在 isObjectDefined() 函數中,我們使用 typeof 運算子來取得 obj 變數的類型並將其儲存在 objType 中。之後,我們將 objType 變數的值與「object」進行比較,以檢查該物件是否存在。

<html>
<body>
   <h2 id="Using-the-i-typeof-i-operator-to-check-if-the-object-is-defined-in-JavaScript">Using the <i>typeof</i> operator to check if the object is defined in JavaScript.</h2>
   <p id = "output"></p>
   <button onclick = "isObjectDefined()"> Check for Object </button>
   <script>
      let output = document.getElementById("output");
      let obj = {
         prop1: "hello",
         prop2: "Users!"
      }
      function isObjectDefined() {
         let objType = typeof obj;
         if (objType === "object") {
            output.innerHTML += "The code contains the object!"
         } else {
            output.innerHTML += "The code doesn't contain the object!"
         }
      }
   </script>
</body>
</html>

使用 if-else 語句

眾所周知,我們可以將條件傳遞給if語句。變數或物件本身表示布林值。當一個變數存在並且包含除“null”之外的其他值時,它確實是一個布林值;否則,它是一個錯誤的布林值。當我們使用假布林值作為 if 語句的條件時,控制總是轉到 else 區塊。

文法

使用者可以依照下列語法使用 if-else 語句來檢查物件是否存在。

if (object) {
   // object exists
} else {
   // object doesn’t exist.
}

在上面的語法中,物件是包含該物件的變數。

範例

在下面的範例中,我們建立了電話對象,其中包含一些屬性和值作為鍵值對。之後,我們使用 if-else 語句來檢查程式碼中是否存在電話物件。

使用者可以觀察當電話物件存在時控制轉到 if 區塊的輸出。

<html>
<body>
   <h2 id="Using-the-i-if-else-i-statement-to-check-if-the-object-is-defined-in-JavaScript">Using the <i>if-else</i> statement to check if the object is defined in JavaScript.</h2>
   <p id = "output"> </p>
   <script>
      let output = document.getElementById("output");
      let phone = {
         "color": "blue",
         "RAM": "8GB",
         "ROM": "128GB"
      }
      if (phone) {
         output.innerHTML += "The phone object defined in the code!"
      } else {
         output.innerHTML += "The phone object isn't defined in the code!"
      }
   </script>
</body>
</html>

使用者學習了三種檢查物件是否存在的方法。使用者可以根據自己的需求使用任何一種方法。如果他們還需要捕獲另一個錯誤,則可以使用 try-catch 區塊;否則,他們使用普通的 if-else 語句而不是 typeof 運算子。

以上是JavaScript 中如何檢查物件是否存在?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文轉載於:tutorialspoint。如有侵權,請聯絡admin@php.cn刪除
從C/C到JavaScript:所有工作方式從C/C到JavaScript:所有工作方式Apr 14, 2025 am 12:05 AM

從C/C 轉向JavaScript需要適應動態類型、垃圾回收和異步編程等特點。 1)C/C 是靜態類型語言,需手動管理內存,而JavaScript是動態類型,垃圾回收自動處理。 2)C/C 需編譯成機器碼,JavaScript則為解釋型語言。 3)JavaScript引入閉包、原型鍊和Promise等概念,增強了靈活性和異步編程能力。

JavaScript引擎:比較實施JavaScript引擎:比較實施Apr 13, 2025 am 12:05 AM

不同JavaScript引擎在解析和執行JavaScript代碼時,效果會有所不同,因為每個引擎的實現原理和優化策略各有差異。 1.詞法分析:將源碼轉換為詞法單元。 2.語法分析:生成抽象語法樹。 3.優化和編譯:通過JIT編譯器生成機器碼。 4.執行:運行機器碼。 V8引擎通過即時編譯和隱藏類優化,SpiderMonkey使用類型推斷系統,導致在相同代碼上的性能表現不同。

超越瀏覽器:現實世界中的JavaScript超越瀏覽器:現實世界中的JavaScriptApr 12, 2025 am 12:06 AM

JavaScript在現實世界中的應用包括服務器端編程、移動應用開發和物聯網控制:1.通過Node.js實現服務器端編程,適用於高並發請求處理。 2.通過ReactNative進行移動應用開發,支持跨平台部署。 3.通過Johnny-Five庫用於物聯網設備控制,適用於硬件交互。

使用Next.js(後端集成)構建多租戶SaaS應用程序使用Next.js(後端集成)構建多租戶SaaS應用程序Apr 11, 2025 am 08:23 AM

我使用您的日常技術工具構建了功能性的多租戶SaaS應用程序(一個Edtech應用程序),您可以做同樣的事情。 首先,什麼是多租戶SaaS應用程序? 多租戶SaaS應用程序可讓您從唱歌中為多個客戶提供服務

如何使用Next.js(前端集成)構建多租戶SaaS應用程序如何使用Next.js(前端集成)構建多租戶SaaS應用程序Apr 11, 2025 am 08:22 AM

本文展示了與許可證確保的後端的前端集成,並使用Next.js構建功能性Edtech SaaS應用程序。 前端獲取用戶權限以控制UI的可見性並確保API要求遵守角色庫

JavaScript:探索網絡語言的多功能性JavaScript:探索網絡語言的多功能性Apr 11, 2025 am 12:01 AM

JavaScript是現代Web開發的核心語言,因其多樣性和靈活性而廣泛應用。 1)前端開發:通過DOM操作和現代框架(如React、Vue.js、Angular)構建動態網頁和單頁面應用。 2)服務器端開發:Node.js利用非阻塞I/O模型處理高並發和實時應用。 3)移動和桌面應用開發:通過ReactNative和Electron實現跨平台開發,提高開發效率。

JavaScript的演變:當前的趨勢和未來前景JavaScript的演變:當前的趨勢和未來前景Apr 10, 2025 am 09:33 AM

JavaScript的最新趨勢包括TypeScript的崛起、現代框架和庫的流行以及WebAssembly的應用。未來前景涵蓋更強大的類型系統、服務器端JavaScript的發展、人工智能和機器學習的擴展以及物聯網和邊緣計算的潛力。

神秘的JavaScript:它的作用以及為什麼重要神秘的JavaScript:它的作用以及為什麼重要Apr 09, 2025 am 12:07 AM

JavaScript是現代Web開發的基石,它的主要功能包括事件驅動編程、動態內容生成和異步編程。 1)事件驅動編程允許網頁根據用戶操作動態變化。 2)動態內容生成使得頁面內容可以根據條件調整。 3)異步編程確保用戶界面不被阻塞。 JavaScript廣泛應用於網頁交互、單頁面應用和服務器端開發,極大地提升了用戶體驗和跨平台開發的靈活性。

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
3 週前By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解鎖Myrise中的所有內容
4 週前By尊渡假赌尊渡假赌尊渡假赌

熱工具

SublimeText3 Linux新版

SublimeText3 Linux新版

SublimeText3 Linux最新版

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強大的PHP整合開發環境

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

將Eclipse與SAP NetWeaver應用伺服器整合。

EditPlus 中文破解版

EditPlus 中文破解版

體積小,語法高亮,不支援程式碼提示功能