我假设ES6类是一个对象,因为“一切”都是JavaScript中的对象。这是正确的假设吗?

最佳答案

Object Oriented Programming类的角度来看不是对象。这是一个抽象。每个对象都是该抽象的具体实例。

从JavaScript的角度来看,类是一个对象,因为类是ES6功能,并且在其下使用了简单功能。它不仅是Javascript中的抽象,而且本身就是一个对象。该功能是一个对象。它具有自己的属性和功能。

因此,用Java语言来讲,并非所有事物都是对象。也有原始类型-number中的stringbooleanundefinedsymbolES6。当您使用除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/

10-12 13:02
查看更多