ES6学习之const声明常量的学习
在ES中const关键字用来声明常量,const声明的一经定义不能修改 和let特性差不多,
const a = ;
console.log(a);
a = ; //报错
const定义完常量后必须赋值,后面不允许再次赋值
const aa;
const b; //报错 const定义完后,必须赋值,后面不允许赋值
b=5;
alert(b);
const c = 12;
(function () {
console.log(c); //死区 访问不到
const c = 5; //不再同一个作用域 }())
const声明的引用类型(对象)可以追加,但是不可以重新赋值
const arr = [1, 2];
// arr=[]; //报错
arr.push(3); //不报错
console.log(arr); const obj = { name: 123, age: 18 };
// obj={}; //报错
obj.name = "小样儿";//不报错
obj.sex = "女"; //不报错
console.log(obj);
const myarr = [1, 2, 3, 4, 5, 6, 7];
Object.freeze(myarr); //冻结起来,冻结之后不能追加也不能修改
myarr.push(8); //报错了
如果是({})对象那么用 obj.xxx=“aaa”;方式不报错,但是不起作用
const myobj = Object.freeze({
name: "xiaoyang",
age: 18,
});
myobj.age = 19; //不报错,但是不起作用
myobj.sex = '女'; //不报错,但是不起作用
console.log(myobj); //输出{name: "xiaoyang", age: 18}
ES6学习之const声明常量的学习的更多相关文章
- JS 使用const声明常量的本质(很多人都有误解)
在我们使用const声明常量时,总认为值一旦声明就不可改变,其实是有误解的: 刚在看ES6标准文档时,仔细阅读了const的解析,恍然大悟的感觉,分享给大家. 本质 const实际上保证的,并不是变量 ...
- ES6学习之let声明变量的学习
1.let和var类似, (1)let与var不同的点:let没有预编译,变量提升这个过程,let声明的变量只能在当前作用域内访问到(一个{}可以看做是一个作用域),在全局var声明的变量属于wind ...
- Dart语言学习(二) Dart的常量和变量
1.使用var声明变量,可赋予不同类型的值 Dart是一个强大的脚本类语言,可以不预先定义变量类型 ,自动会类型推导 Dart中定义变量可以通过var关键字可以通过类型来申明变量 var str='t ...
- (1)ES6中let,const,对象冻结,跨模块常量,新增的全局对象介绍
1.let声明变量,var声明变量,而const声明的常量 2.let与var的区别 let可以让变量长期驻扎在内存当作 let的作用域是分块[ {快1 {快2 } }每个大括号表示一个独立的块 ...
- 【JS学习】var let const声明变量的异同点
[JS学习]var let const声明变量的异同点 前言: 本博客系列为学习后盾人js教程过程中的记录与产出,如果对你有帮助,欢迎关注,点赞,分享.不足之处也欢迎指正,作者会积极思考与改正. 总述 ...
- ES6学习-3 const
const声明一个只读的常量.一旦声明,常量的值就不能改变,所以在声名时就进行赋值. const的作用域与let命令相同,只在声明所在的块级作用域内有效. const命令声明的常量,同样存在暂时性死区 ...
- Go语言学习笔记三: 常量
Go语言学习笔记三: 常量 定义常量 常量就是在声明后不能再修改的量. const x int = 100 const y string = "abc" const z = &qu ...
- ES6-11学习笔记--const
新声明方式:const 1.不属于顶层对象 window 2.不允许重复声明 3.不存在变量提升 4.暂时性死区 5.块级作用域 以上特性跟let声明一样,特性可看 let 的学习笔记:链接跳转 ...
- ES6和ES5变量声明的区别(var let const)
// es5的语法与es6的语法区别 // var let const console.log(name);//undefine,不会报错,因为变量声明会提到作用域的最前面 var name=&quo ...
随机推荐
- 「小程序JAVA实战」小程序视频展示页开发(52)
转自:https://idig8.com/2018/09/22/xiaochengxujavashizhanxiaochengxushipinzhanshiyekaifa51/ 这次说下,小程序的视频 ...
- MySQL 常用命令行
增加新用户 格式:grant 权限 on 数据库.* to 用户名@登录主机 identified by "密码" 如,增加一个用户user1密码为password1,让其可以在本 ...
- Remove “Quick Access” entry in Eclipse Juno
Here is a quick hack which doesn't require any plugin installation, instead you just need to add a f ...
- 【326】PIL 截图及图片识别
参考:另一种用python识别图片文字的方法 参考:Python人工智能之图片识别,Python3一行代码实现图片文字识别 参考:Python3+Selenium3环境构建填坑之旅 参考:基于pyth ...
- javascript中的属性类型
ECMA-262第5版在定义只有内部才用的特性(attribute)时,描述了属性(property)的各种特性.ECMA-262定义这些特性是为了实现javascript引擎用的,因此在javasc ...
- interrupt()方法的简单理解
interrupt() 方法只是改变中断状态而已,它不会中断一个正在运行的线程.这一方法实际完成的是,给受阻塞的线程发出一个中断信号,这样受阻线程就得以退出阻塞的状态.更确切的说,如果线程被Objec ...
- Python setattr() 函数
Python setattr() 函数 Python 内置函数 描述 setattr() 函数对应函数 getattr(),用于设置属性值,该属性不一定是存在的. 语法 setattr() 语法: ...
- hashlib 算法介绍
Python的hashlib提供了常见的摘要算法,如MD5,SHA1等等. 什么是摘要算法呢?摘要算法又称哈希算法.散列算法.它通过一个函数,把任意长度的数据转换为一个长度固定的数据串(通常用16进制 ...
- intval()
1.将字符串转换成整数 2.取数字的整数部分
- Laravel 配置文件操作方法
1)laravel 的所以配置文件都在根目录下的 config 目录里,直接看一个配置文件的名字就知道是做什么的了,这里不说了 2)读取配置的方法 $value = config('app.timez ...