1. ES6新增的Object.keys():Object.keys()
方法會返回一個由一個給定對象的自身可枚舉屬性組成的數組
data() { return { objdata:{name:'li',firstname:"yong"}, objsdata:{} }; }, mounted() { console.log(Object.keys(this.objdata)); //["name", "firstname"] console.log(Object.keys(this.objsdata)); //[] },
所以,我們可以通過 Object.keys(obj).length 是否為零來判斷對象是否為空 Object.keys(obj).length === 0則對象為空
2.另一種比較簡單的方法,利用JSON.stringify()
data() { return { objdata:{name:'li',firstname:"yong"}, objsdata:{} }; }, mounted() { console.log(Object.keys(this.objdata)); //["name", "firstname"] console.log(Object.keys(this.objsdata)); //[] console.log(JSON.stringify(this.objdata)); //{"name":"li","firstname":"yong"} console.log(JSON.stringify(this.objsdata)); //{} if(JSON.stringify(this.objsdata) === '{}'){ console.log("對象為空"); } },
也就是說 JSON.stringify(obj) === '{}' 則對象為空