1.

1 //只读常量,一旦声明,常量的值就不能改变。
2         const PI=3.1415;
3         console.log(PI);
4         PI=6;//报错:es6.html:186 Uncaught TypeError: Assignment to constant variable.在恒定的变量分配
5
6         const foo;//报错:es6.html:190 Uncaught SyntaxError: Missing initializer in const declaration常量声明中缺少初始化器。const一旦声明变量,就必须立即初始化,不能留到以后赋值。

2.

1     //const的作用域与let命令相同:只在声明所在的块级作用域内有效。
2         //与let一样,也存在暂时性死区,只能在声明语句后使用。
3         //与let一样,不可重复声明。
4         if(true){
5             const MAX=99
6             console.log(MAX);//99
7         }
8         console.log(MAX);//es6.html:196 Uncaught ReferenceError: MAX is not defined

3.

 1 //const声明常量的本质:const实际上保证的是变量指向的那个内存地址不得改动。对于简单类型的数据(数值 ,字符串,布尔值),值就保存在变量指向的那个内存地址,因此等同于常量。
 2         //对于复合型的数据(主要是对象和数组),变量指向的内存地址,保存的只是一个指针,const只能保证这个指针是固定的,但是不能保证它指向的数据结构是固定的。
 3         const foo={};
 4
 5         //为foo添加属性,可以成功。
 6         foo.prop=123;
 7         console.log(foo.prop);//123
 8
 9         foo={};//报错:es6.html:209 Uncaught TypeError: Assignment to constant variable.
10
11
12
13         const a=[];
14         a.push('hello');//["hello"]
15         console.log(a);
16         a.length=0;
17         console.log(a.length);//0
18         console.log(a);//[]
19         a=["Dave"];//Uncaught TypeError: Assignment to constant variable.
20
21         //使用Object.freeze将对象冻结,
22         const foo=Object.freeze({});
23                 // 常规模式时,下面一行不起作用;
24                 // 严格模式时,该行会报错
25         foo.prop=123;//报错:Uncaught TypeError: Cannot add property prop, object is not extensible

转载于:https://www.cnblogs.com/LinSL/p/7159367.html

ES6_入门(2)_const命令相关推荐

  1. Systemd 入门及常用命令

    目录 Systemd systemd架构 systemd 系统管理 管理系统 查看启动耗时 查看当前主机的信息 Unit 资源 查看当前系统的所有 Unit 查看系统状态和单个 Unit 的状态 Un ...

  2. Systemd入门教程:命令篇

    Systemd入门教程:命令篇 转自:http://www.ruanyifeng.com/blog/2016/03/systemd-tutorial-commands.html 作者: 阮一峰 日期: ...

  3. 超详细Redis入门教程——Redis命令(下)

    前言 本文小新为大家带来 超详细Redis入门教程--Redis命令 相关知识,具体内容包括简单动态字符串 SDS,集合的底层实现原理,BitMap 操作命令,HyperLogLog 操作命令,Geo ...

  4. 超详细Redis入门教程——Redis命令(上)

    前言 本文小新为大家带来 超详细Redis入门教程--Redis命令(上) 相关知识,具体内容包括Redis 基本命令,Key 操作命令,String 型 Value 操作命令,Hash 型 Valu ...

  5. Mysql入门教程--基础命令

    Mysql入门教程--基础命令 #mysql ----------------------------------------------------------------------------- ...

  6. walking与Matlab入门教程-ros2命令

    系列文章目录 walking与Matlab入门教程-安装matlab 2022a软件 walking与Matlab入门教程-安装visual studio 2019软件 walking与Matlab入 ...

  7. ES6_入门(1)_let命令

    1. let声明变量只在let命令所在的代码区内有效. 1 "use strict"; 2 /*如果不加"use strict";会报错:Uncaught Sy ...

  8. Ansible 入门指南 - ansible-playbook 命令

    上篇文章Ansible 入门指南 - 安装及 Ad-Hoc 命令使用介绍的额是 Ad-Hoc 命令方式,本文将介绍 Playbook 方式. Playbook 译为「剧本」,觉得还挺恰当的. play ...

  9. Linux新手入门之基础命令操作

    Linux新手入门 1.Linux基本介绍 1.1.简介 Linux 内核最初只是由芬兰人林纳斯·托瓦兹(Linus Torvalds)在赫尔辛基大学上学时出于个人爱好而编写的. Linux 是一套免 ...

最新文章

  1. 上升沿_输入输出的上升沿和下降沿是怎么来的,一起看看
  2. 英特尔、联发科、展讯等开始支持开源的物联网轻量化操作系统AliOS Lite
  3. python爬虫拉取豆瓣Top250数据
  4. 飞鸽传书官方网站 2012 最新源码公开
  5. 在windows服务器开启php的gd库出错
  6. redis新数据类型-Geospatial
  7. jmeter html插件,Jmeter最常见的几个插件(一)
  8. 穿越机F4飞控F405代码pcb文件,原理图
  9. SplitContainer控件的理解
  10. Opencv python之车辆识别项目(附代码)
  11. 自媒体学习教程 新手怎么开始学习自媒体
  12. JQUERY冻结table行或列js
  13. PHP将PPT文件转成图片
  14. x程序 Linux,使用XCB编写X Window程序(01):快速起步
  15. 又一个同学被快手挂掉了
  16. 遍历hashMap、hashSet、Hashtable
  17. 撤销Excel表格保护
  18. curl: (7) Failed to connect to 2600:1f1c:2d4:8900:17a1:2e94:9f90:f91e: 网络不可达
  19. VC图片的半透明处理
  20. Kotlin系列——构造函数精讲

热门文章

  1. Asp中隐藏下载地址
  2. 理解nodejs中函数的参数的来由
  3. 一次服务器CPU占用率高的定位分析
  4. 致传统企业朋友:不够痛就别微服务,有坑
  5. Spring Boot构建RESTful API与单元测试
  6. 21.C 语言与 C++在内存分配有什么区别?
  7. idea 中 git 修改了文件却无法提交(No Changes detected)
  8. C语言 什么时候用取地址什么时候不用取地址,符号讲解
  9. linux下用js生成xml文件,使用JS读取XML文件的方法
  10. 数据中心调试的重新思考