基本包装类型

为了方便地操作基本类型变量,ECMAScript规定了3个特殊引用类型分别是Boolean,Number和String。

这三种特殊引用类型同时具有基本类型和引用类型的功能,当我们读取一个基本类型时,后台会创建一个对应基本包装类型值,这样我们便可以使用某些方法来更方便地操作数据。

当我们像操作对象一样操作基本类型值调用方法或获取属性时,在读取数据时,后台首先会创建对应基本包装类型的实例,然后在实例上调用指定方法,最后销毁这个实例。

var str1 = "hello,world";
var str2 = str1.substring(2);
//上面两行代码等价于
var str1 = new String("hello,world");
var str2 = str1.substring(2);
str1 = null ;

所有的基本包装类型转化为布尔类型时都会返回true(包括传入Boolean的值为false的情况)。

我们可以给Object构造函数传入参数,然后可以得到相应的基本包装类型的实例。

var obj = new Object("hello,world");
alert(obj instanceof String);//true

当使用new加基本包装类型构造函数时返回的值和使用同名转型函数返回的值是不一样的

var obj = "123";
obj = Number(obj);
alert(typeof obj);//"number" var anotherobj = new Number(obj);
alert(typeof anotherobj);//"object" 基本包装类型的实例调用typeof时都会返回"object"

最新文章

  1. docker 1.8+之后ubuntu安装指定版本docker-engine
  2. Linux安装后的基本配置
  3. CString::Mid成员函数
  4. 几种循环语句 ,break,continue语句用法
  5. Showing progress bar in a status bar pane
  6. 去他的效应(what-the-hell effect)与自我放纵
  7. MariaDB Galera Cluster集群
  8. ASP.Net 验证控件 RegularExpressionValidator
  9. 使用jpeglib库实现bmp转jpg
  10. 多线程编程学习四(Lock 的使用).
  11. 清北学堂2019NOIP提高储备营DAY1
  12. blfs(systemd版本)学习笔记-安装、配置和使用wpa_supplicant无线网络连接工具
  13. /etc/profile ~/.bash_profile ~/.bashrc 等文件的执行过程 和 区别
  14. 微信小程序——template的循环嵌套
  15. VS2010/MFC编程入门之四十二(MFC常用类:CString类)
  16. 1.2 Why Python for Data Analysis(为什么使用Python做数据分析)
  17. phpstorm+xdebug远程调试设置
  18. sql获取时间、年龄
  19. websocket初步了解
  20. utf-8-BOM删除bom

热门文章

  1. 关于AD获取成员隶属于哪些组InvokeGet("memberOf")的问题
  2. CMAKE添加库
  3. sql注入关键字
  4. 三元运算符整体执行情况:Object obj = true? Integer.valueOf(1): Double.valueOf(2.0);
  5. 0x06_自制操作系统My-OS,IDT,GDT,PIC初始化,实现键盘中断
  6. playwright结合pytest使用案例
  7. JavaSE 对象与类(一)
  8. js-工具方法(持续更新)
  9. MSB/LSB的意思
  10. TDSQL-C Serverless 服务是如何实现通过接入层来实现恢复感知