当前位置: 首页 > news >正文

JavaScript------const

这里写目录标题

  • 介绍
  • 在声明时赋值
  • 不是真正的常数
  • 常量对象可以更改
  • 常量数组可以更改

介绍

ES2015 引入了两个重要的 JavaScript 新关键词:let 和 const。

通过 const 定义的变量与 let 变量类似,但不能重新赋值:

const PI = 3.141592653589793;
PI = 3.14;      // 会出错
PI = PI + 10;   // 也会出错

在声明时赋值

JavaScript const 变量必须在声明时赋值:

不正确
const PI;
PI = 3.14159265359;
正确
const PI = 3.14159265359;

不是真正的常数

关键字 const 有一定的误导性。

它没有定义常量值。它定义了对值的常量引用

因此,我们不能更改常量原始值,但我们可以更改常量对象的属性。

常量对象可以更改

您可以更改常量对象的属性:

// 您可以创建 const 对象:
const car = {type:"porsche", model:"911", color:"Black"};// 您可以更改属性:
car.color = "White";// 您可以添加属性:
car.owner = "Bill";

但是您无法重新为常量对象赋值:

const car = {type:"porsche", model:"911", color:"Black"};
car = {type:"Volvo", model:"XC60", color:"White"};    
// ERROR

常量数组可以更改

您可以更改常量数组的元素:

// 您可以创建常量数组:
const cars = ["Audi", "BMW", "porsche"];// 您可以更改元素:
cars[0] = "Honda";// 您可以添加元素:
cars.push("Volvo");

但是您无法重新为常量数组赋值:

const cars = ["Audi", "BMW", "porsche"];
cars = ["Honda", "Toyota", "Volvo"];    
// ERROR

相关文章:

  • kali系统几个开机启动项的区别
  • 【网络编程】多进程服务器端
  • mybatis使用注解形式实现一对多、多对多查询(转载)
  • Unity 6预览版即将增加对visionOS 2的支持
  • 【向量检索】之向量数据库Milvus,Faiss详解及应用案例
  • 0-1 构建用户画像数仓
  • 《操作系统真象还原》第七章——改进中断
  • 保障信息安全!等保2.0的二级和三级到底有何不同?详细解析
  • 【深度解析】如何有效恢复手机数据?5个简单步骤
  • Java学习笔记之基本数据类型转换
  • 解决Linux下Java应用因内存不足而崩溃的问题
  • 电脑丢失dll文件一键修复的方法有哪些?分析dll文件修复的多种策略
  • Unity:Text-TextMeshPro 不显示中文
  • python反序列化知识点学习
  • 5.Sentinel入门与使用
  • [case10]使用RSQL实现端到端的动态查询
  • 【347天】每日项目总结系列085(2018.01.18)
  • CentOS6 编译安装 redis-3.2.3
  • ES6--对象的扩展
  • JavaScript HTML DOM
  • nodejs实现webservice问题总结
  • PyCharm搭建GO开发环境(GO语言学习第1课)
  • Redis 中的布隆过滤器
  • Terraform入门 - 1. 安装Terraform
  • 高性能JavaScript阅读简记(三)
  • 好的网址,关于.net 4.0 ,vs 2010
  • 基于MaxCompute打造轻盈的人人车移动端数据平台
  • 坑!为什么View.startAnimation不起作用?
  • 判断客户端类型,Android,iOS,PC
  • 设计模式(12)迭代器模式(讲解+应用)
  • 使用 QuickBI 搭建酷炫可视化分析
  • 世界上最简单的无等待算法(getAndIncrement)
  • 算法系列——算法入门之递归分而治之思想的实现
  • 通过获取异步加载JS文件进度实现一个canvas环形loading图
  • 通过来模仿稀土掘金个人页面的布局来学习使用CoordinatorLayout
  • 移动端解决方案学习记录
  • 阿里云重庆大学大数据训练营落地分享
  • ​queue --- 一个同步的队列类​
  • ​二进制运算符:(与运算)、|(或运算)、~(取反运算)、^(异或运算)、位移运算符​
  • (23)mysql中mysqldump备份数据库
  • (30)数组元素和与数字和的绝对差
  • (Qt) 默认QtWidget应用包含什么?
  • (react踩过的坑)antd 如何同时获取一个select 的value和 label值
  • (初研) Sentence-embedding fine-tune notebook
  • (免费领源码)python+django+mysql线上兼职平台系统83320-计算机毕业设计项目选题推荐
  • (算法)求1到1亿间的质数或素数
  • (转)JVM内存分配 -Xms128m -Xmx512m -XX:PermSize=128m -XX:MaxPermSize=512m
  • (转)编辑寄语:因为爱心,所以美丽
  • *(长期更新)软考网络工程师学习笔记——Section 22 无线局域网
  • .equal()和==的区别 怎样判断字符串为空问题: Illegal invoke-super to void nio.file.AccessDeniedException
  • .NET : 在VS2008中计算代码度量值
  • .Net Core中的内存缓存实现——Redis及MemoryCache(2个可选)方案的实现
  • .NET Core中的时区转换问题
  • .NET delegate 委托 、 Event 事件
  • .NET Framework与.NET Framework SDK有什么不同?