object.keys() 方法會返回乙個由乙個給定物件的自身可列舉屬性組成的陣列。通過陣列中屬性的個數判斷是否為空物件。
const empty =
;object.
keys
(empty)
.length ===
0&& empty.constructor === object;
而且需要判斷物件的constructor屬性是否等於object,因為js有很多的內建物件,不僅僅只有object,還有number和boolean等等。
function
bademptycheck
(value)
// 不準確
bademptycheck
(new
number()
);// true ?
bademptycheck
(new
boolean()
);// true ?
只有判斷物件的constructor屬性才可以確定該物件是由object建立出來的。
function
isemptyobject
(value)
現在對於非物件都會返回false。
isemptyobject
(100
)// false
isemptyobject
(true
)// false
isemptyobject([
])// false
但是小心!有些值將引發**報錯。
// typeerror: cannot covert undefined or null ot object
goodemptycheck
(undefined)
goodemptycheck
(null
)
如果不希望它丟擲typeerror,可以新增乙個額外的判斷處理一下:
function
isemptyobject
(value)
除了使用如上的方法判斷空物件,我們還有一些其它的方法也可以處理:
function
isobjectempty
(value)
"}
JS React 判斷物件是否為空物件
js一般判斷物件是否為空,我們可以採用 if x 的方式直接判斷,但是如果是乙個空物件,比如空的json物件,是這樣的 簡單的判斷是不成功的,因為它已經占用著記憶體了,如果是jquery的話,直接使用isemptyobject 來判斷,如果是js,可以採取下面的方法1 檢測物件是否是空物件 不包含任...
js判斷物件是否為空
在php中空陣列跟和空物件,在進行布林值驗證是是false,但是js中陣列或物件不管是否有屬性或值存在統統任務是true。在編寫程式的過程中這是很蛋疼的。為了解決這個問題只能自己寫方法進行判斷。下面總結一下幾種方法 用es6的keys方法搞定 function isempty obj 利用json轉...
js判斷物件是否為空
1.將json物件轉化為json字串,再判斷該字串是否為 var data var b json.stringify data alert b true 2.for in 迴圈判斷 var obj var b function return true alert b true 3.jquery的is...