js 简单数据类型和复杂数据类型的区别

Posted py-小白

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js 简单数据类型和复杂数据类型的区别相关的知识,希望对你有一定的参考价值。

 

原始数据类型: number,string,boolean,undefined, null,object
基本类型(简单类型),值类型: number,string,boolean
复杂类型(引用类型):object
空类型:undefined,null

值类型的值在哪一块空间中存储? 栈中存储
引用类型的值在哪一块空间中存储?对象在堆上存储,地址在栈上存储

var num=10;//值类型,值在栈上
var obj={};//复杂类型,对象在堆,地址(引用)在栈

值类型之间传递,传递的是值
引用类型之间传递,传递的是地址(引用)

值类型作为函数的参数,传递的是值
引用类型作为函数的参数,传递的是地址  
function Person(name,age,salary) {
      this.name = name;
      this.age = age;
      this.salary = salary;
    }
    function f1(person) {
      person.name = "ls";
      person = new Person("aa",18,10);
    }

    var p = new Person("zs",18,1000);
    console.log(p.name);//zs
    f1(p);
    console.log(p.name);//is

 https://www.cnblogs.com/luckq/p/9681259.html

以上是关于js 简单数据类型和复杂数据类型的区别的主要内容,如果未能解决你的问题,请参考以下文章

JS简单数据类型和复杂数据类型

javascript原始值和引用值类型及区别

js中的简单数据类型和复杂数据类型

js中的简单数据类型和复杂数据类型

JS中的简单数据类型和复杂数据类型

js的简单数据类型和复杂数据类型