1、原始类型与引用类型(区别)

简介: 1、原始类型与引用类型(区别)

1、原始类型与引用类型


类型
原始类型 数值、字符串、布尔、null、undefined
引用类型 对象(Array、Date、RegExp、Math、自定义对象、第三方库引入对象)


2、赋值的区别


类型 区别
原始类型赋【值】 值发生变化,只影响一个变量。
引用类型赋【引用】 但引用指向的对象发生变化,所有指向这个对象的变量都会发生变化


    // 1、原始类型赋值
    let str1 = "Hello";
    let str2 = "World";
    str1 = "jasmine";
    console.log(str1);    // 输出结果:jasmine
    console.log(str2);    // 输出结果:World
    // 2、引用类型赋值
    let stu1 = { name: "jasmine" };
    let stu2 = stu1;
    stu1.name = "qiqi";
    console.log(stu1.name);   // 输出结果:qiqi
    console.log(stu2.name);   // 输出结果:qiqi


3、类型比较的区别


类型 区别
原始类型 比较值是否相等
引用类型 比较引用是否指向同一对象
    // 1、原始类型的比较(值是否相等)
    let str1 = "Hello";
    let str2 = "Hello";
    console.log(str1 === str2);   // 输出结果:true
    // 2、引用类型的比较(引用是否指向同一对象)
    let stu1 = { name: "jsmine" };
    let stu2 = { name: "jsmine" };
    console.log(stu1 === stu2);   // 输出结果:false

4、函数传参的区别


类型 区别
原始类型 原始类型作为参数,函数内的操作不影响实参的值
引用类型 引用类型作为参数,函数内的操作会影响实参的值


    // 1、原始类型传参
    function fun(n) {
      n = 100;
    }
    let n = 10;
    fun(n);
    console.log(n);   // 输出结果:10
    // 2、引用类型传参
    function fun1(arr) {
      arr.push(10);
    }
    let arr = [1, 2, 3];
    fun1(arr);
    console.log(arr);   // 输出结果:[1, 2, 3, 10]


相关文章
|
16天前
|
存储 JavaScript 前端开发
引用类型的赋值操作和比较方式是怎样的?
【10月更文挑战第29天】引用类型的赋值操作和比较方式的特点决定了在处理引用类型数据时需要特别注意对象的引用关系,以避免因共享引用而导致的数据不一致等问题。
|
5月前
|
存储 Java 程序员
|
6月前
|
JavaScript 前端开发 程序员
强制类型转换和隐式类型传换是什么?他们的区别又是什么?
强制类型转换和隐式类型传换是什么?他们的区别又是什么?
|
6月前
|
JavaScript 前端开发 编译器
TypeScript 中的基础类型:原始类型、对象类型、数组类型、元组类型、枚举类型和联合类型
TypeScript 中的基础类型:原始类型、对象类型、数组类型、元组类型、枚举类型和联合类型
75 1
引用传递示例,以及String类型如何传递的原理
大家都知道值传递和引用传递,下面我来通过以一个问题和示例来解决引用类型传递的原理         1)先创建了引用类型Person里面有String name 和int age          2)new 一个对象,把这个对象的值赋给a,再把a赋给Person类型的b
|
存储 Java
基本类型、包装类型、引用类型、String等作为实参传递后值会不会改变?
基本类型、包装类型、String类型作为参数传递之后,在方法里面修改他们的值,原值不会改变!引用类型不一定,要看是怎么修改它的。
114 0
|
存储 编译器
不同类型的变量与零究竟是如何比较(2)
不同类型的变量与零究竟是如何比较
129 0
不同类型的变量与零究竟是如何比较(2)
|
C语言 C++
不同类型的变量与零究竟是如何比较(1)
不同类型的变量与零究竟是如何比较
112 0
不同类型的变量与零究竟是如何比较(1)
19、原始类型与引用类型
19、原始类型与引用类型
87 0
下一篇
无影云桌面