当前位置: 首页 > 网络应用技术

为什么不能将属性添加到字符串

时间:2023-03-07 12:21:21 网络应用技术

  当我们尝试将动态属性添加到字符串中时,我们会发现它不会生效

  上面的尝试将属性添加到字符串中,似乎是成功的,当您阅读时,您将无法得到。

  这种情况的主要原因将出现在上面,即JS将包装在弦上。包装对象的生命周期很特别。例如,上面的输出语句,JS引擎将执行以下三个步骤:

  可以理解

  上述作业操作不是不能获得的?

  原因是第二行代码将暂时创建一个字符串对象,并且在执行第三行代码后,该对象已被破坏。当读取第三行代码以读取字符串时,创建了一个新的包装对象。目前,此对象没有属性。

  参考类型和原始值包装类型之间的主要区别是对象的生命周期。通过新实例的引用类型,离开示波器时所获得的实例将被销毁,并且自动创建的原始值包装对象仅在访问它的行执行期内存在。这意味着您不能在运行时添加属性和方法

  如果您真的想将属性添加到字符串中,则可以定义上面的新属性:

  但是,不建议通常这样做,这会影响所有字符串。相似,它们具有与以下特征相同的特征。