Number对象中的属性在哪里?

时间:2018-02-23 22:10:17

标签: javascript

var a = new Number(4);

我创建了一个带有4作为构造函数参数的对象。

  1. 4是该对象的属性吗?它是否有名称/密钥,如0:4?
  2. 为什么我无法迭代该对象(在循环中预先形成)?
  3. 我问这个,因为当我记录a时,我得到的只是这张看似毫无意义的画面。它并没有告诉我很多关于对象的事情。

    enter image description here

2 个答案:

答案 0 :(得分:2)

创建Number对象时,您传递的值将分配给该对象的slot。您实际上无法像执行属性那样访问它,但如果您按如下所示展开对象,则可以看到插槽,由[[PrimitiveValue]]表示。您可以像处理常规数字一样处理此对象,并执行加法,减法等操作。(请参见屏幕截图)。

enter image description here

答案 1 :(得分:1)

如果您在浏览器中查看控制台,您可以找到名称为[[PrimitiveValue]]的属性,其中包含Number的值。通过valueOf函数

检索该对象的值

谷歌浏览器

enter image description here