Javascript中的函數是對象。而ES6中的類關鍵字是語法糖,實際上是一個函數,所以類是對象?JavaScript ES6中的類對象?
回答
是的。
class MyClass {}
console.log(MyClass instanceof Object);
但請注意,可能存在不是'instanceof Object'的對象:'console.log(Object.create(null)instanceof Object)'。 –
也注意到原語也從Object繼承,儘管它們不是Object的實例:''use strict'; (「%o%s是Object的一個實例,雖然它有」,this,this instanceof Object?「是」:「不是」,foo); } 「someText」.foo(); Math.PI.foo(); Math.PI.foo(); (1 <2).foo();' – Thomas
@Thomas這是不正確的。基元不從'Object'繼承。對原語執行屬性訪問會將其強制轉換爲其對應的包裝器對象,並且包裝器對象從Object繼承。 'Object.prototype.myVal = 5; var myStr =「a」;的console.log(myStr.myVal); myStr.myVal = 7;的console.log(myStr.myVal);' – JLRishe
- 1. 的Javascript對象ES6
- 2. JavaScript ES6:es6類中的分組方法?
- 3. 如何在Javascript/Lodash/ES6中搜索父對象和子對象?
- 4. ES6類對象是不確定的
- 5. 在JavaScript ES6類的構造函數中調用超類(它擴展了對象
- 6. 迭代中ES6對象
- 7. Javascript ES6類變量
- 8. ES6類添加函數對象
- 9. ES6解構對象
- 10. Javascript中類的對象
- 11. 的Javascript ES6類組成
- 12. yeoman中的ES6 javascript
- 13. React Component中的這個對象使用ES6類
- 14. 子類ES6在JavaScript設置
- 15. 如何在javascript/nodejs中創建靜態函數/對象(ES6)
- 16. 如何在控制檯中顯示javascript ES6地圖對象?
- 17. 如何在JavaScript(ES6)中繼承Selection對象?
- 18. 解構ES6嵌套對象
- 19. 重用ES6獲取對象
- 20. 出口對象ES6模塊
- 21. 合併兩個對象ES6
- 22. Javascript對象類型
- 23. 在JavaScript中繼承對象中的類
- 24. 如何在Javascript ES6中「隱藏」類名?
- 25. 最短的ES6方式來查找對象數組中的對象值?
- 26. 的javaScript ES6地圖()返回某些對象只
- 27. 如何使用ES6保持JavaScript導入對象的狀態?
- 28. 從localStorage解析ES6類對象不包括類功能
- 29. 在JavaScript中的子類中擴展父類方法ES6
- 30. 確定JavaScript中對象的類型
什麼是認爲這背後的問題的實際問題/?如果是關於繼承,幾乎JS中的所有東西都從Object繼承,甚至是基元,儘管它們不是Object的實例。還是關於類型檢查?或者還有什麼問題呢? – Thomas
我有一個基於靜態語言的基於類的OOP背景。這對我來說似乎很奇怪。當我從一個類(例如MyClass)創建一個對象並用typeof檢查它時,typeof表示它是'object',而不是'MyClass'。 –