代码之家  ›  专栏  ›  技术社区  ›  Andrew Savinykh

与基元值相比,数字/布尔/字符串对象的用途是什么?

  •  3
  • Andrew Savinykh  · 技术社区  · 14 年前

    在JavaScript中,可以作为函数或构造函数调用函数。例如,您可以执行以下操作:

    myObject = new Number(13);
    myPrimitiveValue = Number(13);
    

    或者简单地

    myPrimitiveValue = 13;
    

    我理解结果之间的区别。你能解释一下在什么合理的情况下,创建一个数字、布尔值或字符串作为对象是可取的吗?例如,对于包含数字/布尔值/字符串的对象来说,设置新属性(这是您可以对对象执行的操作,但不能对基元值执行的操作)的能力几乎总是一个坏主意。为什么要使用数字/布尔/字符串对象?

    1 回复  |  直到 14 年前
        1
  •  1
  •   Guffa    14 年前

    很少需要为基本数据类型创建对象。

    从Microsoft文档 Number object :

    “数字对象是 数值数据。主要目的是 数字对象将收集 属性转换为一个对象并转换为 允许将数字转换为 通过ToString方法的字符串。这个 数字对象类似于 数字数据类型。但是,他们有 不同的属性和方法。

    你很少需要构造一个数字 对象。数字数据 类型应在大多数情况下使用 情况。因为数字对象 与数字数据互操作 类型,所有数字对象方法和 属性可用于变量 类型编号。”