javascript 引用类型 - 基本包装类型(深入理解基本包装类型和基本类型的区别)

Boolean、Number、String有的解释说是基本类型,但是官方的说明,他们是特殊的引用类型。

而据我总结,这三种类型比较特殊,既可以是基本类型,又可以是引用类型。

为什么呢,请看下文。

因为他们可以调用new新建对象。

例如:String str =new String("hello");。这样定义的话,足够说明引用类型的性质。

然后再用typeof(str)判断,返回来的数据是Object。

而当用 var str="hello"; 用typeof判断的话,也会返回Boolean、Number、String类型,所以说,这三个说是基本类型也是可以的。

上面两种说法,其实分别就是两种不同的定义方法,其实也就是两个概念,前面一个是引用类型的Boolean 对象 、Number 对象 、String 对象声明,一个是基本类型的Boolean、Number、String,理解这两种区别是非常重要的,建议永远不要使用第一种引用类型的Boolean 对象 、Number 对象 、String 对象声明。

时间: 2024-08-06 12:27:01

javascript 引用类型 - 基本包装类型(深入理解基本包装类型和基本类型的区别)的相关文章

Javascript引用类型之包装类型(Boolean、Number、String)

[1]定义:基本包装类型是特殊的引用类型.每当读取一个基本类型值的时候,后台就会创建一个对应的基本包装类型的对象,从而可能调用一些方法来操作这些数据. e.g. var s1 = 'some text'; var s2 = s1.substring(2); //在上述过程中,实际上发生了三个步骤 var s1 = new String('some text'); //(1)创建String类型的一个实例 var s2 = s1.substring(2); //(2)在实例上调用指定的方法 s1

Java中包装类型和基本类型的使用场景(什么时候使用包装类型)(转)

说明:最简单的理解,基本类型有默认值,而包装类型初始为null.然后再根据这两个特性进行分业务使用,在阿里巴巴的规范里所有的POJO类必须使用包装类型,而在本地变量推荐使用基本类型. Java语言提供了八种基本类型.六种数字类型(四个整数型,两个浮点型),一种字符类型,还有一种布尔型. 1.整数:包括int.short.byte.long初始值为0. 2.浮点型:float.double初始值为0.0 3.字符:char初始值为空格,即'' ",如果输出,在Console上是看不到效果的. 4.

第五章 引用类型 基本包装类型

为了便于操作基本类型值,ECMAScript 提供了3 个特殊的引用类型:Boolean.Number 和String.实际上,每当读取一个基本类型值的时候,后台就会创建一个对应的基本包装类型的对象,从而让我们能够调用一些方法来操作这些数据.来看下面的例子. var s1 = "some text"; var s2 = s1.substring(2); 当第二行代码访问s1 时,访问过程处于一种读取模式,也就是要从内存中读取这个字符串的值.而在读取模式中访问字符串时,后台都会自动完成下

JavaScript的基本包装类型概述

为了便于操作基本类型值,javaScript 提供了 3 个特殊的引用类型:Boolean.Number和 String. 这些类型与其他引用类型相似,但同时也具有与各自的基本类型相应的特殊行为. 实际上,每当读取一个基本类型值的时候,后台就会创建一个对应的基本包装类型的对象,从而能够调用一些方法来操作这些数据.比如: var box = 'Mr. Lee'; //定义一个字符串 var box2 = box.substring(2); //截掉字符串前两位  alert(box2); //输出

JavaScript引用类型和值类型

thead>tr>th,.table>tbody>tr>th,.table>tfoot>tr>th,.table>thead>tr>td,.table>tbody>tr>td,.table>tfoot>tr>td{padding:8px;line-height:1.45;vertical-align:top;border-top:1px solid #ddd}.table>thead>tr&g

Javascript对于类型的理解

1.instanceof和typeof区别 两者都是用来判断类型用的,instanceof顾名思义,是否是某一类型的实例,这个返回值是bool值,例如(new String("so") instanceof String) typeof返回值则是类型名,如(typeof 'so') Javascript对于类型的理解

我对于java基本类型的理解

问:为什么基本类型数组不能和Object数组对传呢?答:那是因为基本类型数组虽然被看作成一个引用类型,但是基本类型数组里的每个元素还是基本类型,但是java并没有提供对基本类型的操作的方法所以不能转为Object数组类型,同理把对应的基本类型数组转为对应包装类数组即可在方法中使用Object数组传递参数 问:为什么基本类型传递给Object参数却可以呢?答:java有种名为自动包装的机制,在传递给Object行参时,会把该基本类型通过包装机制成为一个新的类.在java中每一个基本类型都对应着相应

基本类型、引用类型、基本包装类型和单体内置对象

基本类型值指的是简单的数据段,而引用类型值指那些可能由多个值构成的对象.基本包装类型和单体内置对象都是特殊的引用类型. 一.基本类型 基本类型包含Undefined.Null.Boolean.Number.String 这5种.基本数据类型是按值访问的,因为可以操作保存在变量中的实际值. 基本类型保存在内存中的栈中,大小固定,复制其变量时会创建这个值的一个副本.用typeof方法可以确定一个值是哪种基本类型. 二.引用类型 引用类型包括Object .Array.  Date.  RegExp.

理解隐式类型、对象初始化程序和匿名类型

在C# 3.0中,几乎每个新特性都是为LINQ服务的.所以,本文将介绍下面几个在C# 3.0中引入的新特性: 自动实现的属性 隐式类型的局部变量 对象和集合初始化程序 隐式类型的数组 匿名类型 其实这几个特性都是比较容易理解的,对于这几个特性,编译器帮我们做了更多的事情(想想匿名方法和迭代器块),从而简化我们的代码. 自动实现的属性 在C# 3.0以前,当我们定义属性的时候,一般使用下面的代码 public class Book { private int _id; private string