es6笔记(2) let 和 const】的更多相关文章

1.ES6学习之let.const (1).var.let.const 变(常)量声明 ES5 只有全局作用域和函数作用域,没有块级作用域,这带来很多不合理的场景. 在ES6中let就诞生了,实际上它为javascript新增了块级作用域. let只在变量声明时 ,所在的代码块中有效. 由于这一特性,let很适合在for循环中使用. 如下图是一个demo: let声明变量的特点: a:不存在变量提升: console.log(m);//Uncaught ReferenceError: m is…
参考书<ECMAScript 6入门>http://es6.ruanyifeng.com/ let和const命令 let 总结1.声明变量基本使用方法与var 相同  不同点  a.在代码块中使用let声明的变量只在代码块中有效,代码块外无法访问,而用var声明的在代码块外也可以访问.可以利用这点声明局部变量,也可用它解决js中的for循环闭包的问题    ****闭包的解释****    function out(){//外部函数    var arr = [];    for(var i…
在js中,定义变量时要使用var操作符,但是var有许多的缺点,如:一个变量可以重复声明.没有块级作用域.不能限制修改等. //缺点1:变量可以重复声明 var a=1; var a=2; console.log(a); //2 //缺点2:无法限制修改 //缺点3:没有块级作用域 { var b=12; } console.log(b); //12 ES6新增的let和const就解决了这些问题.下面我们来看看let和const吧. let和const都不能重复声明 let a=1; let…
系列文章 -- ES6笔记系列 一.函数级作用域 我们都知道,在ES6以前,JS只有函数级作用域,没有块级作用域这个概念 没有块级作用域,有利有弊,利于方便自由,弊于作用域内的变量容易被共享,例如这个例子 var a = []; for (var i = 1; i <= 10; ++i) { a[i] = function() { return i; }; } a[3]() 循环中变量i是处于全局作用域下的,其实这里是个闭包,函数内部的i与函数外的i形成了引用的关系,导致函数退出之后i未被销毁,…
系列文章 -- ES6笔记系列 解构赋值,即对某种结构进行解析,然后将解析出来的值赋值给相关的变量,常见的有数组.对象.字符串的解构赋值等 一.数组的解构赋值 function ids() { return [1, 2, 3]; } var [id1, id2, id3] = ids(); console.log(id1, id2, id3); // 1 2 3 如上,解析返回的数组,取出值并赋给相应的变量,这就是解构赋值 1. 还可以嵌套多层,只要相应的模式匹配了就能解析出来 var [a,…
ES6 笔记汇总 二.ES6基础-let和const命令 三.变量的解构赋值 四.字符串的拓展 五.正则表达式的拓展 ...将会持续更新,敬请期待…
ES6笔记2 Promise Promise 是 ES6 引入的异步编程的新解决方案,语法上是一个构造函数 一共有3种状态,pending(进行中).fulfilled(已成功)和rejected(已失败) 特点:只有异步操作可以决定当前处于的状态,并且任何其他操作无法改变这个状态: const promise = new Promise((resolve, reject) => { if (success) { resolve(value); // 成功 } else { reject(err…
系列文章 -- ES6笔记系列 接触过Ajax请求的会遇到过异步调用的问题,为了保证调用顺序的正确性,一般我们会在回调函数中调用,也有用到一些新的解决方案如Promise相关的技术. 在异步编程中,还有一种常用的解决方案,它就是Generator生成器函数.顾名思义,它是一个生成器,它也是一个状态机,内部拥有值及相关的状态,生成器返回一个迭代器Iterator对象,我们可以通过这个迭代器,手动地遍历相关的值.状态,保证正确的执行顺序. 一.简单使用 1. 声明 Generator的声明方式类似一…
ES6,即ECMAScript 6.0,ES6的第一个版本是在2015年发布的,所以又称作ECMAScript 2015 如今距ES6发布已经一年多的时间,这时候才去学,作为一个JSer,羞愧羞愧,还是尽早去学习吧 主要参照阮一峰的 ES6标准入门 及其他资料,系统地学习ES6,好记星不如烂笔头,记录一下成文 以下为系列文章 ES6笔记(1)-- 环境配置支持  ES6笔记(2)-- let的块级作用域  ES6笔记(3)-- 解构赋值  ES6笔记(4)-- Symbol类型  ES6笔记(5…
<OOC>笔记(1)——C语言const.static和extern的用法 C语言中const关键字用法不少,我只喜欢两种用法.一是用于修饰函数形参,二是用于修饰全局变量和局部变量. 用const修饰的函数形参 直接修饰 一个形如 int Minus(const int a, const int b, int testCase); 的函数,const的意义是什么呢? 答:参数a被const修饰,说明在Minus函数内,编译器不允许a被别的变量(例如x)赋值(修改).参数b同理. 如果你写了a…