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 ...
随机推荐
- SVN的部署及分支等方法
1.本地Repository的创建 repository的创建很简单,假设我要在D:\TortoiseSVN\TestRepository目录中创建repository,只需 右键TestReposi ...
- spring.net 如何让xml智能提示
tools ->options ->Text Editor ->xml ->miscellaneous ->network ->勾选 automatically d ...
- Mongodb在Windows 7下的安装及配置
第一步 下载MongoDB: 下载mongodb的windows版本,有32位和64位版本,根据操作系统情况下载,下载地址:http://www.mongodb.org/downloads 解压缩至指 ...
- A - Ice_cream’s world III
Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u Submit Status Pract ...
- Matlab编程基础
平台:Win7 64 bit,Matlab R2014a(8.3) “Matlab”是“Matrix Laboratory” 的缩写,中文“矩阵实验室”,是强大的数学工具.本文侧重于Matlab的编程 ...
- 获取url的html值
//取当前页面的地址 例如http:127.0.0.1:80/aaa/index.html 返回http:127.0.0.1:80/aaa/function getUrlAddr(){ var str ...
- Windows下安装openssl
安装python类库cryptography1.6提示 build\temp.win-amd64-2.7\Release\_openssl.c(429): fatal error C1083: Can ...
- 基于注解的SpringMVC简单介绍
SpringMVC是一个基于DispatcherServlet的MVC框架,每一个请求最先访问的都是DispatcherServlet,DispatcherServlet负责转发每一个Request请 ...
- win32 wndproc 返回值
LRESULT CALLBACK WndProc(...) { case WM_CREATE: .... return 0; case WM_DESTROY: PostQuitMessage (0) ...
- spring data mongodb 配置遇到的几个问题
一. mongodb 2.2版本以上的配置 spring.data.mongodb.uri = mongodb://newlook:newlook@192.168.0.109:27017/admin ...