美文网首页
数据类型(2018/03/14)

数据类型(2018/03/14)

作者: sunsunsunny | 来源:发表于2018-03-14 23:22 被阅读0次

    js中存在两种数据类型:基本类型和引用类型。

    当我们进行赋值操作时,解析器会首先分析数据是值类型还是引用类型。


    一、基本数据类型

    js六种基本类型:string、number、boolean、symbol(ES5)、null、undefined

    这六中基本数据类型可以直接操作保存在变量中的实际值。

    上面的代码是简单的赋值操作,下面简单介绍一下。

    (1)首先数字是基本数据类型。

    (2)var b = a,是将a的数据拷贝一份,然后赋值给变量b。

    (3)a和b是完全独立的。

    (4)b=20,修改变量b的值不会影响变量a的值。


    二、引用类型 

    在js中,引用类型数据存储在堆内存中,但是不可以直接访问堆内存空间中的位置和操作堆内存空间。

    只能通过操作对象在栈内存中的引用地址。所以引用类型的数据,在栈内存中保存的实际上是对象在堆内存中的引用地址。通过这个引用地址可以快速查找到保存在堆内存中的对象。

    (1)var obj1 = new Object();是创建一个对象,是一个引用数据类型,变量obj1存储的是对象在堆内存中的地址。

    (2)var obj2 = obj1;是将对象在堆内存中的存储地址赋值给变量obj2,也就是两个变量存储的都是指向实际对象的内存地址,指向的是同一个对象。

    (3)obj2.name="cc"为对象添加一个属性。

    (4)console.log(obj1.name),输出“cc”,因为两个变量指向同一个对象。

    相关文章

      网友评论

          本文标题:数据类型(2018/03/14)

          本文链接:https://www.haomeiwen.com/subject/fcaqqftx.html