js如何判斷一個物件是否存在
本章節介紹一下如何判斷一個物件是否存在,從表面看起來簡單,其實裡面還是有很多需要注意的細節。
先看一段程式碼例項:
[JavaScript] 純文字檢視 複製程式碼if (!obj) { obj = {} }
上面的程式碼會報錯,因為obj並沒有宣告就進行取值操作。
程式碼修改如下:
[JavaScript] 純文字檢視 複製程式碼if (!obj) { var obj = {} }
上面程式碼正確,因為javascript是先解析後執行,在解析期間,變數宣告會提升,所以上面程式碼與下面是等價:
[JavaScript] 純文字檢視 複製程式碼var obj if (!obj) { obj = {} }
再來看一個判斷方式:
[JavaScript] 純文字檢視 複製程式碼if (typeof obj == "undefined") { obj = {}; }
使用typeof即便是沒有使用var宣告obj也不會報錯,不過最好在宣告obj的時候使用var
[JavaScript] 純文字檢視 複製程式碼if (typeof obj == "undefined") { var obj = {}; }
特別說明:在ES2015中,由於暫時性死區的存在,所以可能會報錯,具體參閱ES2015 let命令一章節。
相關文章
- 如何判斷一個js物件是否存在迴圈引用JS物件
- 判斷一個物件是否為空物件,判斷一個物件中是否有空值物件
- js判斷兩個物件是否相等JS物件
- 如何判斷一個物件是否為空?物件
- 判斷objectStore物件倉庫是否存在Object物件
- 寫個方法判斷陣列物件中是否存在某個物件陣列物件
- python如何判斷一個物件是否是列表Python物件
- js判斷dom節點是否存在JS
- js判斷物件是否為空JS物件
- mysql如何判斷是否存在某個欄位MySql
- postgresql如何判斷表是否存在SQL
- 如何判斷一個元素在億級資料中是否存在?
- 如何在億級資料中判斷一個元素是否存在?
- JS判斷物件是否為空物件的方法JS物件
- JavaScript 中,如何判斷兩個物件是否相等?JavaScript物件
- 判斷Map集合中是否存在某一個key
- JS如何判斷一個陣列是否為空、是否含有某個值JS陣列
- js判斷物件裡面是否有某個屬性JS物件
- 如何判斷一個玩法是否合格?
- 如何從10億資料中快速判斷是否存在某一個元素
- java面試一日一題:如何判斷一個物件是否為垃圾物件Java面試物件
- 如何判斷 JavaScript 物件是否為空?JavaScript物件
- 如何判斷FMEA的存在是否還有意義?
- JavaScript 判斷函式是否存在JavaScript函式
- golang判斷檔案是否存在Golang
- MySQL判斷表名是否存在MySql
- QJsonObject判斷欄位是否存在JSONObject
- python 判斷檔案是否存在Python
- JDK是如何判斷兩個物件是否相同的?判斷的流程是什麼?JDK物件
- js系列文章之 : 判斷 object 物件是否為空JSObject物件
- sqlserver判斷欄位值是否存在某個字元SQLServer字元
- 如果透過python的sdk pymilvus 判斷一個 collection 是否存在?Python
- 如何判斷一個元素文字是否換行?
- Laravel 5 判斷條件是否存在Laravel
- jQuery 判斷使用者是否存在jQuery
- 怎麼判斷mysql表是否存在MySql
- 【深入學習JVM 03】判斷一個物件是否可回收JVM物件
- 技術乾貨:如何判斷一個整數陣列是否存在重複元素......陣列
- Javascript 如何判斷物件為空 {},以及是否包含某個屬性?JavaScript物件