javascript之基本包装类型

     2022-03-18     564

关键词:

基本包装类型

基本包装类型是特殊的引用类型。每当读取一个基本类型值的时候,后台就会创建一个对应的基本包装类型的对象,从而可以调用属性、方法来进行后续操作。

ECMAScript还提供了三种基本包装类型:Number、String、Boolean。

代码现状

我们经常写类似这样的代码,基本类型的变量可以当做对象一样调用属性、方法,但这又不是一个真正的对象只是一个变量而已,那么这是为什么呢?

1    var str = "hello world";
2     console.log(str.length);     // 11
3     console.log(str.toUpperCase());// HELLO WORLD

其实为了便于操作基本数据类型的值,JavaScript 中的基本数据类型的值会在后台创建一个对应的基本包装类型对象,除了 null 和 undefined 所有的基本类型都有对应的包装类型。

如上代码,后台会自动完成下列的处理:

执行到第二行时:

  1. 创建 String 类型的一个实例;
  2. 在实例上调用指定的属性;
  3. 销毁这个实例;

执行到第三行时:

  1. 创建 String 类型的一个实例;
  2. 在实例上调用指定的方法;
  3. 销毁这个实例;

可以将以上三个步骤想象成是执行了下列ECMAScript代码:

复制代码
1 // 执行到第二行时
2 var str = new String("hello world");
3 str.length;
4 str = null;
5 
6 // 执行到第三行时
7 var str = new String("hello world");
8 str.toUpperCase();
9 str = null;
复制代码

这样以上代码中字符串就变得跟对象一样了,同理分别适用与Boolean、Number类型对应的基本数据类型;

现在是不是明白原来这个这个基本包装类型其实就是基本数据类型对应的类型

类型映射关系
string String
number Number
布尔类型(true、false) Boolean

注意:

并不是包装类型提供了方法,而是javascript 引擎后台创建了对应基本包装类型的实例(对象)

每当读取一个基本类型值的时候,后台就会创建一个对应的基本包装类型对象 如:

1 var str = new String("hello world");
2  str.length;
3  str = null;

引用类型对象与基本包装类型对象的区别

主要区别就是这两种对象的生命周期不同。

通过以上代码块我们知道基本包装类型自动创建的对象在对象被调用的时刻存在,调用完后就被销毁了,而使用new关键字创建的引用类型的实例,对象在当前作用域都存在。

//基本包装类型对象
1 var s='some'; 2 s.age='Joel'; 3 console.log(s.age);//undefined

如上代码在给字符串s添加age属性,但是当代码执行到第三行时name属性已经被销毁了,当代码执行第三行时,又创建了一个String 实例,但是这个实例并没有age属性所以输出undefined;

//显示实例化包装类型
1 var s=new String('some'); 2 s.age='Joel'; 3 console.log(s.age);//Joel

总结

1、每个基本数据类型都映射到同名的基本包装类型(除了null、undefined)。
2、在读取基本类型值时,就会创建对应的基本包装类型对象,从而方便了数据操作。
3、操作基本包装类的对象一经执行完毕,就会立即销毁。

javascript基本包装类介绍

  为了便于操作基本类型值,ECMAScript提供了3个特殊的引用类型:Boolean、Number和String。这些类型与其他引用类型相似,但同时也具有与各自的基本类型相应的特殊行为。实际上,每当读取一个基本类型值的时候,后台就会创建... 查看详情

javascript基本包装类型及其操作方法

1.为了便于操作基本类型值,ECMAScript还提供了3个特殊的因哟用类型:Boolean、Number、Striung。这些类型与其他引用类型相似,但同时也具有各自的基本类型相应的特殊行为,实际上每当读取一个基本类型值得时候,后台就会创建一... 查看详情

面向对象之包装类与object类

一、包装类(Wrapper)  1、包装类出现原因为了使8种基本数据类型的变量具有类的特征,引入包装类  2、类型间转化①基本数据类型---->对应的包装类:自动装箱 包装类---->对应的基本数据类型:自动拆箱②基本数据类... 查看详情

java包装类之实体类不要使用基本类型

[color=rgba(0,0,0,0.75)]今天来记录一下,在项目中因为基本类型,所产生的bug。**U•ェ•*U**包装类:8种基本类型的包装类应用场景:数据库建立实体映射多用包装类这两句话是重点:就是建立实体类禁止使用基本数据量类型!... 查看详情

java之基本数据类型包装类

包装类(如:Integer,Double等)这些类封装了一个相应的基本数据类型数值,并为其提供一系列操作。以java.lang.Integer类为例,构造方法:Integer(intvalue);Integer(Strings);常见方法:publicstaticfinalintMAX_VALUE:最大的int型数(2^31-1)publicstatic... 查看详情

javascript08字符串

基本包装类型:将简单类型包装成复杂类型(简单类型没有属性和方法,包装成复杂类型可以调用属性和方法)基本包装类型:String  Number  Boolean当简单类型调用方法的时候,把基本类型变成基本包装类型会创建一个对应... 查看详情

java常用类库之基本类型的包装类

http://www.verejava.com/?id=17159727064934publicclassTest{/***@paramargsthecommandlinearguments*/publicstaticvoidmain(String[]args){//8种基本数据类型对应的包装类//byteByte//shortShort//intInteger//longLong//floatF 查看详情

java之基本类型包装类精选

...。我们上一篇聊到了java之BigDecimal类,这一篇我们聊一下基本类型包装类,针对于以下的概念,都会有实体例子配合着,给大家演示,希望给历险中的你带来一些帮助!!!    一.介绍Java一种静态 查看详情

java基础入门之基本数据包装类以及简单转换

一、  基本数据类型包装类引用数据类型一般为基本数据类型首字母大写,除了int、char,其中int的引用数据类型类Integer,char的引用数据类型为Character关系:          基本数据类型之间的... 查看详情

javaapi入门教程之java的包装类

Java语言是一个面向对象的语言,但是Java中的基本数据类型却是不面向对象的,这在实际使用时存在很多的不便,为了解决这个不足,在设计类时为每个基本数据类型设计了一个对应的类进行代表,这样八个和基本数据类型对应... 查看详情

好程序员java教程分享java之包装类与常用类

...Java教程分享Java之包装类与常用类,首先来讲一下包装类基本数据类型(值类型):byte,short,int,long,float,double,char,boolean包装类:将基本数据类型,用一个类进行了一层包装,可以按照引用类型进行使用。同时还提供了若干用来进... 查看详情

javascript---基本包装对象

总结:  •基本包装类型其实总结起来就是,Number和String类型!!!  以下是本人觉得是十分常用的属性和方法。  1.Number的属性和方法 属性://静态属性无需new1.MIN_VALUE//最小值2.NaN//非数值3.NEGATIVE_INFINITY//负无... 查看详情

网站前端_javascript.0013.javascript包装类型

简单介绍:说明:Js提供了三个特殊的引用类型:Boolean,Number,String,当作为基本类型对象赋值给变量时,后台会创建一个对应的基本包装类型的对象,从而能够调用一些方法来操作这些类型的数据// 字面量创建var content = ‘... 查看详情

javascript中的包装类(代码片段)

JavaScript中三个包装类JS数据类型分类:  基本数据类型:Stiring、Number、Boolean、Undefined、Null、Symbol、BigInt(ES6新增)  引用数据类型:Object前言在学习JavaScript时,我们是否会有一个疑问,在JS中不仅引用类型(如Object、Array... 查看详情

java之数字处理类浅析

...boolean---Booleanchar---Character为什么要有包装类型?包装类把基本类型数据转换为对象 :是因为Java是一个面向对象的语言,基本类型并不具有对象的性质,为了与其他对象“接轨”就 查看详情

java开发知识之java的包装类

...的包装类一丶什么是包装类    包装类的意思就是对基本数据类型封装成一个类.这些类都是Number的子类.区别就是封装数据类型不同.包含的方法基本相同.具体可以查询JAVAAPI.以整形包装类为例Integer类.位于Java.lang包.二丶包装... 查看详情

javascript中的数据类型

  JavaScript中包含五种基本数据类型(原始数据类型),分别是:undefined,null,number,boolean,string;和一种引用类型Object,引用类型中包含特殊的一类:Function类型。number,boolean,string三种基本类型对于有包装类型Number,Boolean,String,... 查看详情

零基础javascript学习完结篇(代码片段)

...▽°)ノ✿】个人空间:GUIDM的个人空间专栏内容:零基础JavaScript学习基础还是关键。欢迎大家的一键三连。 给大家安利一个刷题神器:牛客网JavaScript系列刷题指南:点往此处字符串对象基本概念基本包装类型:把简单数据... 查看详情