<small id='iysPWH5aKo'></small> <noframes id='SowUc'>

  • <tfoot id='9EGU3cpPVN'></tfoot>

      <legend id='IoPhKTi9l'><style id='LhCHI'><dir id='8n5NVWp0e'><q id='LwGRBY6A'></q></dir></style></legend>
      <i id='IXFU0JNo'><tr id='qBvE'><dt id='3x6t0TUOJK'><q id='zLKefMOpCm'><span id='lkwEKM3C'><b id='sewTvt8I'><form id='YMhImkRl6'><ins id='XRENJt4Va6'></ins><ul id='cJEFy3'></ul><sub id='uRHmk5dGrA'></sub></form><legend id='YXQdiW'></legend><bdo id='VMUHDEx1jc'><pre id='c2mwRPui'><center id='Fp3T'></center></pre></bdo></b><th id='ICG9J'></th></span></q></dt></tr></i><div id='OK3mou65'><tfoot id='yA8q2'></tfoot><dl id='vdGxMe'><fieldset id='oRIe2Ps'></fieldset></dl></div>

          <bdo id='H3WIl'></bdo><ul id='tdPxlw7'></ul>

          1. <li id='Bzw4'></li>
            登陆

            一号平台vip-带你走进JavaScript国际系列——根本包装类型

            admin 2019-05-14 360人围观 ,发现0个评论

            为了便于操作根本类型值,ECMAScript 供一号平台vip-带你走进JavaScript国际系列——根本包装类型给了3个特别的引证类型:Boolean,Number和String。这些类型与其他引证类型类似,但一起也具有各自的根本类型相应的特别行为。实际上,每逢读取一个根本类型值的时分,后台就会创立一个对应的根本包装类型的目标。请看下面的比如:

            这个比如中的s1变量包括了一个根本类型的字符串,第二行调用了s1的substring()办法。了解面临目标编程言语的人都知道,根本类型值不是目标,从逻辑上讲它不应该有办法。其一号平台vip-带你走进JavaScript国际系列——根本包装类型实,为了让咱们完结这种直观的操作,后台现已主动完结了一些列的处理。当第二行代码一号平台vip-带你走进JavaScript国际系列——根本包装类型拜访s1的时分,拜访进程处于一种读取方式,也便是从内存中读取这个字符串的值。在读取方式中拜访字符串时,后台都会主动完结下列处理:

            1. 创立String类型的实例;
            2. 在实例上调用指定的办法;
            3. 毁掉这个实例。

            经过此番处理,根本的字符串值就变得跟目标相同了。并且,上面这个三个过程也别离适用于Boolean和Number类型对应的布尔值和数字值。

            引证类型与根本包装类型的首要差异便是目标的生命周期。运用new操作符创立的引证类型的实例,在履行脱离当时效果域之前都一向保存在内存中。而主动创立的根本包装类型的目标,则只存在于一行代码的履行瞬间,然后当即毁掉。这意味着咱们不能在运行时为根本类型值增加了解和办法。请看下面比如:

            根本类型增加特点比如

            Boolean类型

            Boolean类型是与布尔值对应的引证类型。要创立Boolean目标,能够经过调用Boolean结构函数并传入true或false值。

            Boolean类型的实例重写了valueOf()办法,回来根本类型值true或false;重写了toString()办法,回来字符串"true"和"false"。Boolean目标在ECMAScript中的用途不大,它常常使人形成误解。最常见的问题便是在布尔表达式中运用Boolean目标,例如:

            Boolean目标运用进程中的坑

            上面这个比如中,咱们运用false值创立了一个Boolean目标,然后用它与根本类型值true进行逻辑与运算。咱们都知道,false && true 是等于false。但是成果却是true。这是由于是对falseObject而不是对它的值(false)进行求值。前面咱们说过,在布尔表达式中的一切目标都会被转成true,因而falseObject 目标在布尔表达式中代表true。

            主张永久不要运用Boolean目标。

            Number类型

            Number是与数字值对应的引证类型,要创立Number目标,能够在调用Number结构函数时传入相应的数值。

            Number类型重写了valueOf(),toLocaleString()和toString一号平台vip-带你走进JavaScript国际系列——根本包装类型()办法。valueOf()办法回来目标表明的根本类型的数值。别的两个办法回来对应字符串方式的数值。之前的文章里边还介绍过,能够在toString()办法中传递一个表明基数的参数,通知它回来几进制数值的字符,这儿不再过多介绍了。

            除了承继的办法之外,Number类型还供给了一些用于将数值格局化为字符串的办法。

            1. toFixed():依照指定的小数位回来数值的字符串
            2. toExponential():回来以指数方式表明的数值的字符串
            3. toPrecision():或许回来固定巨细格局,也或许回来指数格局,详细规则是看哪种格局最合适

            Number类型办法示例

            String类型

            String类型是字符串的目标包装类,能够运用String结构函数来创立。

            String目标的办法能够在一切根本的字符串值中拜访到。其间承继的valueOf(),toLocaleString()和toString()办法,都回来目标所表明的根本字符串值。

            String类型的每个实例都有一个length 特点,表明字符串中包括多少个字符。

            String length特点

            String类型供给了许多办法,用于辅佐ECMAScript中字符一号平台vip-带你走进JavaScript国际系列——根本包装类型串的解析和操作。

            1. charAt():以单字符字符串的方式回来指定方位的那个字符(别的,能够运用方括号加数字索引来拜访字符串中的字符);
            2. charCodeAt():回来指定方位字符的字湿淋淋符编码;
            3. concat():用于将一个或多个字符串拼接,回来拼接后的新字符串,原字符串不变(大多状况下能够运用+号来拼接);
            4. slice():回来被操作字符串的子串,第一个参数表明子串开端方位,第二个参数表明子串的完毕方位;
            5. substring():大多状况下同slice(),只要传入负数是会有差异;
            6. substr():传入一个参数时同slice(),传入第二个参数时,第二个参数表明要回来的字符个数;
            7. indexOf():从字符串最初向后搜索子串,回来子串的方位;
            8. lastIndexOf():从字符串的结尾向前搜索子串,回来子串的方位;
            9. trim():去字符串前后空格,原字符串不变;
            10. toUpperCase()/toLowerCase():字符串巨细写转化
            11. match():回来一个数组,数组第一项是与整个方式匹配的字符串,之后的每一项保存与正则表达式中的捕获组匹配的字符串
            12. search():回来字符串中第一个匹配项的索引
            13. replace():替换字符串中的内容;
            14. split():将字符串按指定的字符切割成数组;

            charAt() 和 charCodeAt()

            concat()办法

            slice,substring和substr正数状况

            slice,substring和substr负数状况

            indexOf和lastIndexOf()

            trim()办法

            match,search和replace

            split()办法

            请关注微信公众号
            微信二维码
            不容错过
            Powered By Z-BlogPHP