javascript - 对象与原始对象

标签 javascript oop object primitive

最近有一位面试官要求定义对象和基元之间的区别。考虑到所有语言都以原语开头,这似乎是一个奇怪的问题。你会如何回答这个问题?

我还应该注意到,这次面试是针对前端开发职位的,因此他所指的语言(我认为)是 JavaScript。

最佳答案

原语是一种不由其他数据类型组成且不能进一步分解的数据类型。它就像编程场景中的原子。我说原子是因为原子是物质的基本单位,并且没有任何东西可以从中衍生出来。

我的意思是,C 中的 int 不能分解为更小的数据类型。另一方面,对象可以被认为是由多个原始类型组成的分子。例如,string 是 C++ 标准库的一部分;但是,它是一个对象,内部由较小的数据类型组成并包含方法。

需要注意的是,并非所有面向对象的语言都是基于类的(例如 Javascript)。您无法在 Javascript 中定义类,因此这里的对象有很大不同。尽管 Javascript 中的所有内容都是对象(Ruby 也是),但 Number 对象实际上是内部原语的包装器。

关于javascript - 对象与原始对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8643276/

相关文章:

javascript - javascript + angularjs 中的开始和停止时间

javascript - 如何使 React 组件更可重用?

Java HTML 对象

c# - 我应该将应用程序范围的对象传递给需要它的对象,还是应该使用单例?

c# - 根据类型返回特定对象的通用工厂方法

javascript - 如果对象值在数组中是唯一的,则执行此操作

oop - Go:接口(interface)中的可选方法

javascript - Bootstrap 工具提示 - 单击另一个工具提示时隐藏

HTML 表单中的 Javascript 确认不起作用

JavaScript 重构为 OOP