zoukankan      html  css  js  c++  java
  • JavaScript 看不见的类型转换

    本章是我阅读JavaScript权威指南时着重留意的内容,同时也推荐正在学习前端的小伙伴可以留意一下这本书《JavaScript权威指南》

    JavaScript可以很灵活的将一种类型的值转换为另一种类型。让我们在对象环境中使用字符串时(试图将这个字符串当做对象一样去访问他的方法或属性),JavaScript会认为这个字符串值内部地创建一个String包装对象

    例如:

         var str = 'hello word'
    
         console.log(str.length)
    
        // 隐式的包装成  console.log(new String('hello work').length)

    当我们在对象环境中使用字符串时,要注意被创建的String对象只不过是瞬时存在的,他使我们可以去访问属性和方法,此后就没有用了,所以系统会将它丢弃的

    var s = 'hello wold'     // 原始字符串
    
    var S = new String('hello wold')    // 字符串对象

    创建了String对象S之后,我们可以用它来做什么呢?其实我们可以用原始的字符串值做什么,就能拿String对象做什么,除此之外当我们使用typeof时能发现他们除了类型不相同外,无其他区别。我们已经看到过字符串会在有必要时自动的转为对象,结果证明这种转换的结果和原始字符串的结果无异。

    当我们需要一个原始字符串而使用了一个对象时,对象也会自动的转化为字符串:

    例如:

        var str = new String('hello word')
    
        var STR = str + ''
    

      

    上面的例子又是一个触发瞬态的过程字符串对象瞬态成原始字符串执行连接操作

    本章涉及的String对象涉及的所有内容都适用于Number、Boolean

  • 相关阅读:
    方法的重载
    构造方法
    方法与主方法
    类的一般形式
    多维数组
    如何使用数组
    数组的创建以及初始化
    流程控制之break、continue、return的用法
    流程控制之循环结构
    流程控制值选择结构
  • 原文地址:https://www.cnblogs.com/tffan/p/12080007.html
Copyright © 2011-2022 走看看