我假设ES6类是一个对象,因为“一切”都是JavaScript中的对象。这是正确的假设吗?
最佳答案
从Object Oriented Programming
类的角度来看不是对象。这是一个抽象。每个对象都是该抽象的具体实例。
从JavaScript的角度来看,类是一个对象,因为类是ES6功能,并且在其下使用了简单功能。它不仅是Javascript中的抽象,而且本身就是一个对象。该功能是一个对象。它具有自己的属性和功能。
因此,用Java语言来讲,并非所有事物都是对象。也有原始类型-number
中的string
,boolean
,undefined
,symbol
,ES6
。当您使用除undefined
以外的具有此原始类型的某些方法时,它们将被转换为对象。
您可以看到以下示例。
const str = 'Text';
const strObj = new String('Text');
console.log(str);
console.log(strObj.toString());
console.log(typeof str);
console.log(typeof strObj);
还有一个额外的原始类型
null
,但是检查其类型将返回一个对象。这是一个错误。console.log(typeof null);
关于javascript - JavaScript类是对象吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49320862/