zoukankan      html  css  js  c++  java
  • js中使用const声明变量时需要注意

    const实际上保证的,并不是变量的值不得改动,而是变量指向的那个内存地址(初始化的内容)不得改动。对于简单类型的数据(数值、字符串、布尔值),值就保存在变量指向的那个内存地址,因此等同于常量。

    简单类型的数据(数值、字符串、布尔值):

    const a = 1;  //相当于声明常量(常量一旦声明就不可以修改)

    console.log(a); //1

    a=2;//运行时就报错(对常量变量赋值)

    console.log(a); //报错

    但对于复合类型的数据(主要是对象和数组),变量指向的内存地址(初始化的内容),保存的只是一个指针,const只能保证这个指针是固定的,至于它指向的数据结构是不是可变的,就完全不能控制了。

    简单来说就是不能再将其声明为其他对象或重新给它赋值,但是可以进行添加修改删除属性等

    const b = {'name':"lisi"};

    console.log(b.name);

    添加一个属性

    b.prop = 9;

    console.log(b.prop);

    delete b.prop

    console.log(b.prop);

    数组也是和对象一样的

    踩过这个坑,还有下一个坑等着你,这一路就是给自己填坑,坑填多了,也就习惯了,直到这一路平坦了,也就无怨无悔了。
  • 相关阅读:
    Consul 原理
    google ads api —— budget
    rabbitmq 启动报错 Kernel pid terminated
    maven 打依赖包命令
    【原创】Linux基础之supervisor
    Git 常用命令
    Thinkpad T14 AMD版无线网卡不可用
    在Windows10中安装解压版MySQL 8.X
    Git 分支管理参考模型
    Feign入门介绍
  • 原文地址:https://www.cnblogs.com/xiaofeilin/p/13292542.html
Copyright © 2011-2022 走看看