简单掌握JavaScript中const声明常量与变量的用法


Posted in Javascript onMay 21, 2016

ES6引入的第三个声明类关键词与let类似:const。

看一下用法:

const c1 = 1; 
const c2 = {}; 
const c3 = [];
Object.getOwnPropertyDescriptor(window,"c1") 
//Object {value: 1, writable: false, enumerable: true, configurable: false}

上面的例子说,不能在对c2进行赋值,但是可以改变c2的内容,因为c2是个对象,看例子:

c2.p1 = 1;

同样,也可以往c3中添加元素,因为c3是个数组。

const声明常量还有个问题,就是声明和初始化必须在一起,声明了就要初始化:

'use strict'; 
 
const c4;//Uncaught SyntaxError: Unexpected token ;

去掉分号仍然会报错,我们这里不讨论非strict mode下的情况,有兴趣的可以自己去试。

const声明的变量与let声明的变量类似,它们的不同之处在于,const声明的变量只可以在声明时赋值,不可随意修改,否则会导致SyntaxError(语法错误)。

const MAX_CAT_SIZE_KG = 3000; // 正确

MAX_CAT_SIZE_KG = 5000; // 语法错误(SyntaxError)
MAX_CAT_SIZE_KG++; // 虽然换了一种方式,但仍然会导致语法错误

当然,规范设计的足够明智,用const声明变量后必须要赋值,否则也抛出语法错误。

const theFairest; // 依然是语法错误,你这个倒霉蛋
Javascript 相关文章推荐
javascript 原型模式实现OOP的再研究
Apr 09 Javascript
Jquery右下角抖动、浮动 实例代码(兼容ie6、FF)
Aug 15 Javascript
js中的数组Array定义与sort方法使用示例
Aug 29 Javascript
jquery validate添加自定义验证规则(验证邮箱 邮政编码)
Dec 04 Javascript
JavaScript判断数组是否包含指定元素的方法
Jul 01 Javascript
webpack2.0搭建前端项目的教程详解
Apr 05 Javascript
JS判断两个对象内容是否相等的方法示例
Apr 10 Javascript
实例分析vue循环列表动态数据的处理方法
Sep 28 Javascript
javascript面向对象创建对象的方式小结
Jul 29 Javascript
微信小程序button标签open-type属性原理解析
Jan 21 Javascript
安装多版本Vue-CLI的实现方法
Mar 24 Javascript
vue父子组件间引用之$parent、$children
May 20 Javascript
基于javascript实现表格的简单操作
May 21 #Javascript
javascript检测移动设备横竖屏
May 21 #Javascript
Ext JS框架中日期函数的用法及日期选择控件的实现
May 21 #Javascript
js+html5实现canvas绘制网页时钟的方法
May 21 #Javascript
JavaScript的Ext JS框架中的GridPanel组件使用指南
May 21 #Javascript
javascript RegExp 使用说明
May 21 #Javascript
js+html5实现canvas绘制椭圆形图案的方法
May 21 #Javascript
You might like
PHP页面间参数传递的四种方法详解
2013/06/09 PHP
php数据类型判断函数有哪些
2013/09/23 PHP
dvwa+xampp搭建显示乱码的问题及解决方案
2015/08/23 PHP
PHP针对中英文混合字符串长度判断及截取方法示例
2017/03/31 PHP
PHP count_chars()函数讲解
2019/02/14 PHP
PHP快速排序算法实现的原理及代码详解
2019/04/03 PHP
写了一个layout,拖动条连贯,内容区可为iframe
2007/08/19 Javascript
用jquery实现下拉菜单效果的代码
2010/07/25 Javascript
页面定时刷新(1秒刷新一次)
2013/11/22 Javascript
javascript获取和判断浏览器窗口、屏幕、网页的高度、宽度等
2014/05/08 Javascript
jQuery实现定时读取分析xml文件的方法
2015/07/16 Javascript
详解javascript跨浏览器事件处理程序
2016/03/27 Javascript
开启BootStrap学习之旅
2016/05/04 Javascript
Zepto实现密码的隐藏/显示
2017/04/07 Javascript
详解nodejs微信公众号开发——1.接入微信公众号
2017/04/10 NodeJs
JS实现点击Radio动态更新table数据
2017/07/18 Javascript
深入浅析angular和vue还有jquery的区别
2018/08/13 jQuery
Jquery的autocomplete插件用法及参数讲解
2019/03/12 jQuery
VUE的history模式下除了index外其他路由404报错解决办法
2019/08/21 Javascript
js实现旋转的星空效果
2019/11/01 Javascript
详解elementUI中input框无法输入的问题
2020/04/27 Javascript
解决VantUI popup 弹窗不弹出或无蒙层的问题
2020/11/03 Javascript
[43:48]Ti4正赛第一天 VG vs NEWBEE 2
2014/07/19 DOTA
Python模拟百度登录实例详解
2016/01/20 Python
Python Flask基础教程示例代码
2018/02/07 Python
解决Python 中英文混输格式对齐的问题
2018/07/16 Python
python取均匀不重复的随机数方式
2019/11/27 Python
python操作cfg配置文件方式
2019/12/22 Python
使用pytorch完成kaggle猫狗图像识别方式
2020/01/10 Python
简单了解如何封装自己的Python包
2020/07/08 Python
碧欧泉美国官网:Biotherm美国
2016/08/31 全球购物
美国伴娘礼服商店:Evening Collective
2019/10/07 全球购物
数控技校生自我鉴定
2014/04/19 职场文书
小学感恩节活动策划方案
2014/10/06 职场文书
使用numpy nonzero 找出非0元素
2021/05/14 Python
Django对接elasticsearch实现全文检索的示例代码
2021/08/02 Python