简单掌握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 语法基础 想学习js的朋友可以看看
Dec 16 Javascript
jquery向.ashx文件post中文乱码问题的解决方法
Mar 28 Javascript
jQuery动态改变图片显示大小(修改版)的实现思路及代码
Dec 24 Javascript
jQuery+css实现的蓝色水平二级导航菜单效果代码
Sep 11 Javascript
Markdown与Bootstrap相结合实现图片自适应属性
May 04 Javascript
使用 Node.js 对文本内容分词和关键词抽取
May 27 Javascript
微信小程序版翻牌小游戏
Jan 26 Javascript
redux-saga 初识和使用
Mar 10 Javascript
实例讲解JavaScript 计时事件
Jul 04 Javascript
vue + el-form 实现的多层循环表单验证
Nov 25 Vue.js
vue绑定class的三种方法
Dec 24 Vue.js
如何管理Vue中的缓存页面
Feb 06 Vue.js
基于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
用phpmyadmin更改mysql5.0登录密码
2008/03/25 PHP
php数据库配置文件一般做法分享
2012/07/07 PHP
PHP实现微信公众平台音乐点播
2014/03/20 PHP
php求今天、昨天、明天时间戳的简单实现方法
2016/07/28 PHP
CentOS 7.2 下编译安装PHP7.0.10+MySQL5.7.14+Nginx1.10.1的方法详解(mini版本)
2016/09/01 PHP
PHP从二维数组得到N层分类树的实现代码
2016/10/11 PHP
PHP简单装饰器模式实现与用法示例
2017/06/22 PHP
PHP检查URL包含特定字符串实例方法
2019/02/11 PHP
thinkphp5.1框架容器与依赖注入实例分析
2019/07/23 PHP
过虑特殊字符输入的js代码
2010/08/05 Javascript
Jquery为单选框checkbox绑定单击click事件
2012/12/18 Javascript
js Select下拉列表框进行多选、移除、交换内容的具体实现方法
2013/08/13 Javascript
Javascript 命名空间模式
2013/11/01 Javascript
javascript十六进制及二进制转化的方法
2015/05/06 Javascript
JavaScript判断数组重复内容的两种方法(推荐)
2016/06/06 Javascript
JS 实现Base64编码与解码实例详解
2016/11/07 Javascript
Node.js连接postgreSQL并进行数据操作
2016/12/18 Javascript
vue之数据交互实例代码
2017/06/20 Javascript
vue元素实现动画过渡效果
2017/07/01 Javascript
Vue表单demo v-model双向绑定问题
2018/06/29 Javascript
bootstrap实现点击删除按钮弹出确认框的实例代码
2018/08/16 Javascript
微信小程序修改checkbox的样式代码实例
2020/01/21 Javascript
Tornado Web服务器多进程启动的2个方法
2014/08/04 Python
快速了解python leveldb
2018/01/18 Python
django query模块
2019/04/20 Python
python Django里CSRF 对应策略详解
2019/08/05 Python
pytorch模型存储的2种实现方法
2020/02/14 Python
精选鞋类、服装和配饰的全球领先目的地:Bodega
2021/02/27 全球购物
高二物理教学反思
2014/02/08 职场文书
应聘教师求职信
2014/07/19 职场文书
出售房屋委托书范本
2014/09/24 职场文书
优秀团员自我评价
2015/03/10 职场文书
2016年小学“公民道德宣传日”活动总结
2016/04/01 职场文书
Javascript设计模式之原型模式详细
2021/10/05 Javascript
试用1103暨1103、1101同门大比武 [ DAIWEI ]
2022/04/05 无线电
Python中使用tkFileDialog实现文件选择、保存和路径选择
2022/05/20 Python