javascript - 關(guān)于JS中對象屬性描述符和原型的一些問題
問題描述
定義一個(gè)對象,再得到某個(gè)屬性的描述符:例如
let obj = {name: ’Andy’};let descriptor = Object.getOwnPropertyDescriptor(obj, ’name’);
這里的 Object 應(yīng)該是一個(gè)構(gòu)造函數(shù)呀,為什么可以調(diào)用 getOwnPropertyDescriptor 方法?望賜教
問題解答
回答1:getOwnPropertyDescriptor 是一個(gè)靜態(tài)方法
回答2:Object 是JavaScipr的最頂級對象!
在js里面,有原型跟原型鏈這兩個(gè)概念,實(shí)例對象只有原型鏈,而函數(shù)對象跟對象都有自己的原型,函數(shù)對象跟對象是JavaScipr的最頂級的兩個(gè)對象,不管是函數(shù)實(shí)例化出來的對象,還是自定義的對象,還是數(shù)組對象等,他們的原型都是基于這兩個(gè)。
回答3:這個(gè)object就是對象啊
回答4:function Template () { // 在用 new 操作符 調(diào)用的時(shí)候,這就是構(gòu)造函數(shù)};Template.staticMethod = function() { // 靜態(tài)方法};Template.prototype.instanceMethod = function() { // 實(shí)例方法};
這應(yīng)該不難理解Object 的實(shí)現(xiàn)原理等同
相關(guān)文章:
1. mysql - linux連接數(shù)據(jù)庫報(bào)錯(cuò)2. python - flask報(bào)錯(cuò)ValueError: invalid key ’nicknickname’3. javascript - 有適合開發(fā)手機(jī)端Html5網(wǎng)頁小游戲的前端框架嗎?4. javascript - h5微信中怎么禁止橫屏5. MYSQL 根據(jù)兩個(gè)字段值查詢 但兩個(gè)值的位置可能是互換的,這個(gè)怎么查?6. php - MySQL數(shù)據(jù)庫設(shè)計(jì),獲取點(diǎn)贊的人數(shù)7. python3.x - python連oanda的模擬交易api獲取json問題第二問8. mysql - 這種分級一對多,且分級不平衡的模型該怎么設(shè)計(jì)表?9. MySQL中的enum類型有什么優(yōu)點(diǎn)?10. java - 線上應(yīng)用,如果數(shù)據(jù)庫操作失敗的話應(yīng)該如何處理?
