zoukankan      html  css  js  c++  java
  • const定义的对象属性是否可以改变------是!


    用const声明person对象,给age重新赋值是没问题的
    但是重新给person赋值是不可以的

    这里需要了解‘基本数据类型’和‘引用数据类型’

    基本数据类型:string, number, boolean, null, undefined。

    • 基本数据类型的变量是保存在栈区中的,基本数据类型的值直接在栈内存中存储,值与值之间是独立存在的,修改一个变量不会影响其他的变量。

    引用类型:object

    • 引用数据类型的值是同时保存在栈内存和堆内存的对象,栈区保存了对象在堆区的地址,如下(网图)
      套用别人的图
    1. const声明的只是栈区内容不变,基本数据类型保存在栈区中不可改变;引用数据类型在栈区保存的地址不可改变。
    2. 所以const声明的person给属性重新赋值是可以的,但是给person重新赋值是不可以的,那样会改变person在栈区的地址。

    考点:数据类型,栈区,堆区

  • 相关阅读:
    如何判断第一个节区头的RVA
    从可执行文件中删除.reloc节区
    动态规划(dynamic programming)
    Ubuntu18安装SQL server
    Ubuntu16.04突然断网
    [Toddler's Bottle]做题记录
    BUU | pwnable_orw
    BUU| 基础破解
    web.xml
    PKIX
  • 原文地址:https://www.cnblogs.com/facy/p/13161732.html
Copyright © 2011-2022 走看看