• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
Babyfacer摩羯座
https://github.com/babyfacer0104
博客园    首页    新随笔    联系   管理    订阅  订阅
ES6特性

ES6特性:

  let, const, class, extends, super, arrow functions, template string, destructuring, default, rest arguments。。。

一、let, const

这两个的用途与var类似,都是用来声明变量的,但在实际运用中他俩都有各自的特殊用途。
首先来看下面这个例子:

传统var写法:

ES6写法,let实际上为JavaScript新增了块级作用域。用它所声明的变量,只在let命令所在的代码块内有效。

 

浏览器返回:

 

 二、class, extends, super,ES6使用传统语言的写法,更通俗易懂:

 

三、arrow function(*)

 

四、template string

这个更加常用,而且很有用,就是每次要写动态添加html就要写很多个加号,很不方便,ES6解决此问题。

传统写法:

ES6写法:

注意:用反引号(\)来标识起始,用${}`来引用变量,而且所有的空格和缩进都会被保留在输出之中

 

五、destructuring

ES6写法:

 

六、default, rest

 

七、Set和Map数据结构:

Set遍历方法:set.key()

set.values()

set.entries()

1、Set例子:

var s = new Set();

var arr = [1,1,2,3,6,8,8,9,10];

arr.map( x => s.add(x) );

for (i of s) {

  console.log(i);

}

打开结果:通过add,Set结构不会添加重复的值。

PS:Set对存入数据 1和'1',是不识别,需求用 "===" .

 

2、Map:

1、Map结构的目的和基本用法:
  JavaScript的对象(Object),本质上是键值对的集合(Hash结构),但是只能用字符串当作键。这给它的使用带来了很大的限制。

2、例子:

var map = new Map([["name", "张三"], ["title", "Author"]]);

for (let item of map.entries()) {
  console.log(item[0], item[1]);
}

 

3、Let:

*区别:

1、let和var只在循环是,有不同点;

2、var 声明的变量作用域不是块级的,会扩大变量的作用域,可能造成不必要的 shadow(变量覆盖),通常情况下都不是想要的结果;

let 声明的变量作用域就更精确,离开作用域变量就销毁。

 

posted on 2016-01-29 12:34  Babyfacer摩羯座  阅读(196)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3