如下图是看到的一个关于数组去重的方法,图中的newArray和arr用的是const声明,就我理解的const定义的值不是不可以改变吗,怎么还可以用newArray.push()?

定义const常量,改变值竟然不报错?
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
4条回答 默认 最新
- 神仙别闹 2021-12-30 11:28关注
当const定义的常量为 '基本数据类型' 时,不能被修改;当定义的常量为 '引用数据类型' 时,我们可以通过其属性进行数据修改,而数组属于'引用数据类型',具体可以参考下这个。
ES6之- const常量是否真的不能被修改?_杜明鸣的博客-CSDN博客_const为什么不能修改 const的定义:是一个只读的常量,一旦声明,不可修改是否真的不能修改?敲几段代码看一下由上图可看到,const定义string常量后,尝试进行修改,报错 ‘Assignment to constant variable’再敲几段代码看一下从上述几段代码可以看出,当const定义的常量为 '基础数据类型' 时,不能被修改;当定义的常量为 '引用数据类型' 时,我们可以通过其属性进行数据修改为何会如此呢?因为const常量保证值不能被改变,其实保证的是指向的内存地址的值不能被修https://blog.csdn.net/qq_41797950/article/details/106258526
如有帮助,采纳支持一下,谢谢。
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报 编辑记录