es6再回顾 info深入理解es6

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了es6再回顾 info深入理解es6相关的知识,希望对你有一定的参考价值。

迭代器和for-of循环

es5使用内建的forEach方法来遍历数组

arr.foreach(function(value){

  console.log(value);

});

这段代码看起来简洁,但这种方法有一个小缺陷:你不能使用break语句中断循环,也不能使用return语句返回到外层函数。

 

es6  for-of 可以正确响应break、continue和return语句

for (var value of myArray) {
  console.log(value);
}

for-of可以用来干什么

for-in循环用来遍历对象属性。

for-of循环用来遍历数据—例如数组中的值。

for-of循环也支持字符串遍历,它将字符串视为一系列的Unicode字符来进行遍历:

它同样支持Map和Set对象遍历。

for (var [key, value] of phoneBookMap) {
   console.log(key + "‘s phone number is: " + value);
}

var map=new Map([[‘a‘,1],[‘b‘,2]]);

for (var [key, value] of map) {
console.log(key + "‘s phone number is: " + value);
}
VM1833:2 a‘s phone number is: 1
VM1833:2 b‘s phone number is: 2

Map:Map结构提供了“值—值”的对应,是一种更完善的Hash结构实现。如果你需要“键值对”的数据结构,Map比Object更合适。它类似于对象,也是键值对的集合,但是“键”的范围不限于字符串,各种类型的值(包括对象)都可以当作键。

//1.
var map = new Map();
map.set(‘one‘, 1);
map.set(‘two‘, 2);
map.set(‘three‘, 3);
//...

//2. var map = new Map([[‘one‘,1], [‘two‘, 2], [‘three‘, 3]]);




关于Map:http://www.cnblogs.com/sker/p/5520392.html
http://www.cnblogs.com/dagaoxiaozheng/p/6605981.html

 



 

以上是关于es6再回顾 info深入理解es6的主要内容,如果未能解决你的问题,请参考以下文章

《深入理解ES6》之扩展对象的功能性

深入理解ES6之《用模块封装代码》

深入理解ES6之《用模块封装代码》

深入理解es6 class

深入理解ES6之《ES6中较小的改动》

深入理解ES6之《ES6中较小的改动》