es6 const
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> </head> <body> <script src="js/browser.min.js" type="text/javascript" charset="utf-8"></script> <script type="text/javascript"> 'use strict'; //const用来声明常量 const PI = 3.1415926; //const PI = 3; //报错 //var PI; //报错 //const foo; //必须立即初始化 //const只对声明的块级作用域内有效 if(true){ const MAX = 6; } //alert(MAX); //MAX is not defined var message = "hello"; var age = 25; //不能重复声明变量 //const message = "aaa"; //报错 //let age = 26; //报错 //如果是对象或者数组,只能保证地址不变,但是变量的值可以变 const foo = {}; foo.prop = 123; console.log(foo.prop); //123 //foo = {}//地址改变了,所以报错了 //如果真的想冻结一个对象,可以使用Object.freeze const foo2 = Object.freeze({}); //foo2.prop = 123; //报错 //对象彻底冻结的方法,即属性也冻结 var constantize = (obj) =>{ Object.freeze(obj); Object.keys(obj).forEach(key , value) =>{ if(typeof obj[key] === 'object'){ constantize(obj[key]); } } } //没理解这上面写的啥玩意 </script> </body> </html>
es6 const的更多相关文章
- es6(const、let)
首先我很好奇,明明现代浏览器支持ES6.ES7不是那么好,为何还推行? var let const 有何区别?它们之间的限制又是什么?且听我娓娓道来 1. var 和let的关系,为何推荐let? ( ...
- ES6 const用法
1.const声明一个只读的常量.一旦声明,常量的值就不能改变. 2.const的作用域与let命令相同:只在声明所在的块级作用域内有效. 3.const命令声明的常量也是不提升,只能在声明的位置后面 ...
- es6 const let
一.const 1.const 声明的是常量,一旦声明,值将是不可变的: 2.const也具有块级作用域: 3.不能变量提升(必须先声明后使用): 4.const 不可重复声明 5.const 指令指 ...
- es6 const关键字
const是constant(常量)的缩写,const和 let一样,也是用来声明变量的,但是const是专门用于声明一个常量的,顾名思义,常量的值是不可改变的.以前用var声明的变量,想怎么改就怎么 ...
- 深入研究const(es6特性)
const 申明常量 var str = 'es6' console.log(window.str) // es6 属于顶层对象window const不属于顶层对象window const str ...
- ES6,ES2105核心功能一览,js新特性详解
ES6,ES2105核心功能一览,js新特性详解 过去几年 JavaScript 发生了很大的变化.ES6(ECMAScript 6.ES2105)是 JavaScript 语言的新标准,2015 年 ...
- ES6入门
整理了ES6常用的一些语法,跟大家分享(promise.generator什么的还没有梳理清楚,后续再更新...) 1⃣️ 变量声明-let 与 const (首先关于测试结果:这里有个小问题,如果用 ...
- 学习 ES6,一篇文章就够了
ES6 简介 ECMAScript 6 简称 ES6,是 JavaScript 语言的下一代标准,已经在2015年6月正式发布了.它的目标是使得 JavaScript 语言可以用来编写复杂的大型应用程 ...
- ES6的语法
一,定义变量let(类似var) 在js一直有一个bug是var: 1.var 声明的变量会有变量提升 console.log(name); //jhon var name = 'jhon'; 2.v ...
随机推荐
- 视音频技术作业一:比较CCD与CMOS摄像的区别
作业详解: CCD与CMOS简介: CCD: CCD是Charge Coupled Device(电荷耦合器件)的缩写,它是一种半导体成像器件,因而具有灵敏度高.抗强光.畸变小.体积小.寿命长.抗震动 ...
- 探究toString()和valueOf()
1.用法如下:toString()方法:返回对象的字符串表示. 对象 操作 Array 将 Array 的元素转换为字符串.结果字符串由逗号分隔,且连接起来. Boolean 如果 Boolean 值 ...
- 完成Matrix丶Kingdom PPT后的感想
这次Presentation是我在这节课的第一次上台演讲,让我感悟良多. 具体对我的PPT有兴趣的朋友可以call我,我会共享给大家. 这次老师布置的任务对我而言很有意义.首先,我作为最后一组,我欣赏 ...
- css3-实现3D立方体旋转
核心内容: 1.CSS3 中 animation.perspective 属性的熟练运用. 2.CSS3 中的变形属性 transform,在 3D 立体效果中的运用. 3.3D 立方体旋转实现原理. ...
- CoInitialize浅析一
大家都知道程序中若要使用COM组件则必须要先调用CoInitialize,该函数主要是用来初始化COM运行环境.但这个函数的作用域是以线程为单位还是以进程为单位呢?也许大家已经通过测试程序摸索出答案, ...
- tinyXML的用法
tinyXML一款很优秀的操作C++类库,文件不大,但方法很丰富,和apache的Dom4j可以披靡啊!习惯了使用java类库的我看到这么丰富的c++类库,很高兴!它使用很简单,只需要拷贝几个文件到你 ...
- overflow:hidden清楚浮动的影响
在网页布局中有时会遇到这种情况: 如果左边用<dt>,右边用<dd>,放在一行显示,<dt>要设置float:left,这个应该都知道,问题是,第一行这样做没有问题 ...
- MySQL集群在断网后再启动报"Unable to start missing node group"问题处理
总所周知,MySQL集群又名ndb cluster,而ndb就是network based database的简称,数据库节点之间依靠网络来通信和保证数据分块间的一致性.今天由于机房交换机损坏,导致集 ...
- RTSP协议媒体数据发包相关的细节
最近完成了一RTSP代理网关,这是第二次开发做RTSP协议相关的开发工作了,相比11年的简单粗糙的版本,这次在底层TCP/IP通讯和RTSP协议上都有了一些新的积累,这里记录一下.基本的RTSP协议交 ...
- php 把数字1-1亿换成汉字表述,例如 150 转成 一百五十
/* 额,重新修改了下.现在估计没什么问题了.... */ 直接上实例 写到 千亿上了. /** * @author ja颂 * 把数字1-1亿换成汉字表述,如:123->一百二十三 * @pa ...