• JavaScript 之 基本包装类型


    基本包装类型

      为了方便操作基本数据类型,JavaScript 还提供了三个特殊的引用类型:String/Number/Boolean

       下面先看一段代码:

    var s1 = "Hello world!!!";
    var s2 = s1.substring(5);
    

       我们要知道,s1 是一个基本类型,基本类型是没有办法的,只有对象才有属性和方法。那就有一个疑问,为什么可以调用 substring() 方法呢?

        原因: 当调用 s1.substring(5) 的时候,会先把 s1 包装成 String类型的临时对象,再调用 substring()方法,最后销毁临时对象。

       等价于:

    var s1 = new String('Hello World!!!');
    var s2 = s1.substring(5);
    s1 = null;
    

      

    创建基本包装类型的对象:

    var num = 18;                // 数值,基本类型
    var num = Number('18');      // 类型转换
    var num = new Number(18);    // 基本包装类型,对象
    

    注意:String 包装类最常用,Number 和 Boolean 基本包装类型基本不用,使用的话可能会引起歧义。 

      Demo:

    var b1 = new Boolean(false);
    var b2 = b1 && true;
    

      下面来讨论一下 b2 的值是什么?

      b2 = true。

      原因:b1 是一个 Boolean 对象,它的原始值(PrimitiveValue)为 false。b1&& true 因为 b1是一个非空对象,所以会默认转换为 true。所以 b2 的值为 true

      扩展:会转换为 false 的5种情况: 0  ''  null  NaN  undefined 

  • 相关阅读:
    Neoj4安装使用教程
    毕业设计每日博客——第五周3
    毕业设计每日博客——第五周2
    不知道为什么,我就是被这个冒号迷惑了
    对items函数的理解
    关于运算符+的一点想法
    请使用迭代查找一个list中最小和最大值,并返回一个tuple
    Python中最常见括号()、[]、{}的区别
    ping和telnet的区别
    SQL注入原理
  • 原文地址:https://www.cnblogs.com/niujifei/p/11367594.html
Copyright © 2020-2023  润新知