javascript中的对象层次结构和类型:为什么数字和字符串是函数而不是对象



只是问为什么

typeof Number 

因此提供功能

其他内置对象,如数学或JSON是对象,根据这个答案(javascript中的内置对象层次结构是什么样子的?),它们都应该与Object相关,而不是与Function相关。

Javascript设计缺陷还是有其含义?这个答案正确吗?

函数

构造函数创建一个新的函数对象。在 JavaScript 中 每个函数实际上都是一个函数对象。

功能是美化的对象。

https://developer.mozilla.org/de/docs/Web/JavaScript/Reference/Global_Objects/Function

当然,但真正的问题是为什么字符串从函数继承 和 JSON 从对象继承。我看不出这有什么意义。例如 如果将方法添加到函数原型,它将可用于 字符串,但不是 JSON

JavaScript 对象是键和值之间的映射。键是字符串,值可以是任何内容。这使得对象自然适合哈希图。

函数是具有可调用附加功能的常规对象。

您可以实例化字符串,但不能实例化 Math 对象。这可能是让你感到困惑的事实。

alert(new String());
alert(new Math());

最新更新