Property description must be an object
本篇文章參考以下博文
- Uncaught TypeError: Property description must be an object
- Object.defineProperties()
文章目錄
- 報(bào)錯(cuò)
- 區(qū)別
- Object.defineProperty
- Object.defineProperties
報(bào)錯(cuò)
??最近在使用 Object.defineProperties 定義屬性時(shí)報(bào)錯(cuò): Property description must be an object
??報(bào)錯(cuò)說明:屬性描述必須是對象.
??當(dāng)時(shí)我是錯(cuò)把 defineProperty 當(dāng)成了 defineProperties ,這兩個(gè)乍一看有點(diǎn)像,但是存在一些差別。
區(qū)別
Object.defineProperty
??該方法會(huì)直接在一個(gè)對象上定義 一個(gè) 新屬性,或者修改一個(gè)對象的現(xiàn)有屬性
?? Object.defineProperty( obj , prop , descriptor )
?? obj : 要定義屬性的對象。
?? prop : 要定義或修改的屬性的名稱或 Symbol 。
?? descriptor : 要定義或修改的屬性描述符
// 使用 __proto__ var obj = {}; var descriptor = Object.create(null); // 沒有繼承的屬性 // 默認(rèn)沒有 enumerable,沒有 configurable,沒有 writable descriptor.value = 'static'; Object.defineProperty(obj, 'key', descriptor);// 顯式 Object.defineProperty(obj, "key", {enumerable: false,configurable: false,writable: false,value: "static" });Object.defineProperties
??方法直接在一個(gè)對象上定義 一個(gè)或多個(gè) 新的屬性或修改現(xiàn)有屬性
?? Object.defineProperties( obj , props )
?? obj :在其上定義或修改屬性的對象。
?? props:定義其可枚舉屬性或修改的屬性描述符的對象
var obj = {}; Object.defineProperties(obj, {'property1': {value: true,writable: true},'property2': {value: 'Hello',writable: false}// etc. etc. });
總結(jié)
以上是生活随笔為你收集整理的Property description must be an object的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: databricks使用教程
- 下一篇: 如何从bitbucket到github的