javascript中基本类型和引用类型的差别

代码1:
var a=3.14;
var b=a;
a=4;
alert(b);

代码2
var a=[1,2,3];
var b=a;
a[0]=99;
alert(b);

请问为什么代码1显示的是3.14 ,为什么a的值并没有改变呢?明明在执行了第二行代码之后又给a重新赋值了。难道是因为第一行给a赋的值是基础类型的数值 不能被改变么?
那为什么代码2 显示的值是99,2,3,为什么a的值变了 ,是因为数组是引用类型的,引用类型没有固定大小 ,它并不能真正赋值给谁,而只是赋值给了b一个引用的形式、告诉变量b哪里可以找到它,是这样么?引用类型的值就可以变 基本类型的就不能变么?  
谁能给我一个通俗易懂的解释呀 ! 谢谢了

时间: 2024-12-29 17:45:09

javascript中基本类型和引用类型的差别的相关文章

[转]javascript中基本类型和引用类型的区别分析

基本类型和引用类型 ECMAScript包含两个不同类型的值:基本类型值和引用类型值.基本类型值指的是简单的数据段:引用类型值指由多个值构成的对象.当我们把变量赋值给一个变量时,解析器首先要做的就是确认这个值是基本类型值还是引用类型值. 常见的五种基本数据类型是: Undifined.Null.Boolean.Number和String.这五种基本数据类型可以直接操作保存在变量中的实际值. 看下面例子: ? 1 2 3 4 5 6 7 8 9 var a = 10; var b = a;    

javascript中基本类型和引用类型的区别分析

大多数人系统学习过的程序设计语言,在这些语言的学习过程中最早学到的几个要点之一就是值类型和引用类型的区别.下面我们来看一下在 JavaScript 中基本数据类型(Primitive Types)和引用类型(Reference Types)的区别.. 基本类型和引用类型 ECMAScript包含两个不同类型的值:基本类型值和引用类型值.基本类型值指的是简单的数据段:引用类型值指由多个值构成的对象.当我们把变量赋值给一个变量时,解析器首先要做的就是确认这个值是基本类型值还是引用类型值. 常见的五种

javascript 数据类型(基本类型和引用类型的定义和区别)

ECMAStript变量包含两种不同类型的值,基本类型和引用类型. 基本类型:指的就是保存在栈内存中的简单数据段. 引用类型:指的是那些保存在堆内存中的对象,换句话说,就是变量名实际上是一个指针,而这个指针指向的位置,就是保存对象的位置. 两种不同的访问方式 基本类型:按值访问,操作的是它们实际的值. 引用类型:按引用访问,当查询时,我们需要先从栈中读取内存地址,然后按照指针所指向的地方,找到堆内存里面的值. 基本类型 基本的数据类型有:`undefined,boolean,number,str

简单分析JAVASCRIPT的基本类型和引用类型

由于最近项目当中使用EXTJS这样一种前端框架,所以就离不开JavaScript得使用,所以最近我就在自己研究学习JavaScript,目的是为了方便开发的顺利进行.但是在实际开发当中,我发现JavaScript是一门很简单就能上手的语言,但是真正使用起来我们就会发现他作为一门弱类型的语言,从某种角度来看可能是一个既有趣有强大的功能,但是也是容易出问题的特性. 楼主本人也是处于学习这门语言当中,所以写一篇博客也是为了巩固自己的知识,同时也是为了和大家一起分享我对于学习当中一些大家都用过但是不一定

Javascript手记-基本类型和引用类型

1:ecmascript包含2中不同的数据类型,基本数值类型和引用数值类型.基本数据类型是简单的数据段,引用类型是指那些可能由多个值构成的对象. 1.1:常用的基本类型:Undefined,Null,Boolean,Number,String 1.2:引用类型的值是保存在内存中的对象.与其它语言不同,javascript不允许直接访问内存中的位置,也就是说不能直接操作对象的内存空间,再 操作对象时实际是操作对象的引用而不是操作实际的对象. 2:复制变量值 2.1:eg:var numA=5; v

JavaScript的基本类型和引用类型的值。

ECMAScript变量包含两种数据类型的值:基本类型值和引用类型值. 在将一个值赋给变量时,解析器必须确定这个值是基本类型值还是引用类型值. 基本类型:string,number,boolean,undefined和null.      基本类型值:简单的数据段,保存在栈内存中同时占有固定大小的空间,按值访问,因此可以操作保存在变量中的实际的值. 引用类型:Object,Array,Date     引用类型值: 由多个值构成的对象,在栈内存中变量保存的实际上是一个地址,这个地址指向堆内存中所

javascript数据基本类型和引用类型

JavaScript基本数据类型: js基本数据类型包括:undefined,null,number,boolean,string.基本数据类型是按值访问的,就是说我们可以操作保存在变量中的实际的值. 1. 基本数据类型的值是不可变的 任何方法都无法改变一个基本类型的值,比如一个字符串: var name = "change"; name.substr();//hang console.log(name);//change var s = "hello"; s.to

Javascript中的基本类型和引用类型

一.基本类型和引用类型概述 js中数据类型的值包括:基本类型值和引用类型值 基本数据类型:undefined;null;boolean;number;string 引用类型值:保存在内存中,js不允许直接访问内存位置,因此时操作引用而不是实际对象 二.如何检测数据类型 1.基本数据类型的检测:使用typeof var s = "AAA"; alert(typeof s); //返回string `     2.引用类型(对象类型)检测:使用instanceof alert(person

JavaScript基本类型和引用类型的值

JS变量可能包含两种不同数据类型的值:基本类型值和引用类型值.基本类型指的是简单的数据段,而引用类型值那些由多个值构成的对象: 在将一个值赋给变量时,解析器必须确定这个值是基本类型值还是引用类型值.JS有5种基本数据类型:Undefined, Null,Boolean,Number和String.这5种基本数据类型是按值访问的.因为可以操作保存在变量中的实际的值. 引用类型的值保存在内存中的对象.与其他语言不同,JavaScript不允许直接访问内存中的位置,也就是说不能直接操作对象的内存空间.