[ES6] 19. for ... of

In ES5, we have for ... in:


var phones = ["iPhone", "Nexus", "Nokia"];

for(i in phones){
    console.log(phones[i]);
}

//iPhone
//Nexus
//Nokia

What we get from for...in is index of array.

In ES6, for ... of can get value from array:


var phones = ["iPhone", "Nexus", "Nokia"];

for(phone of phones){
    console.log(phone);
}

//iPhone
//Nexus
//Nokia

Using for...of on object:


var es6 = {
  edition: 6,
  committee: "TC39",
  standard: "ECMA-262"
};

for (e in es6) {
  console.log(e);
}
// edition
// committee
// standard

var engines = Set(["Gecko", "Trident", "Webkit", "Webkit"]);
for (var e of engines) {
    console.log(e);
}
// Gecko
// Trident
// Webkit

var es6 = new Map();
es6.set("edition", 6);
es6.set("committee", "TC39");
es6.set("standard", "ECMA-262");
for (var [name, value] of es6) {
  console.log(name + ": " + value);
}
// edition: 6
// committee: TC39
// standard: ECMA-262

See more: http://javascript.ruanyifeng.com/advanced/ecmascript6.html#toc17

时间: 2024-08-11 23:09:06

[ES6] 19. for ... of的相关文章

JS开发者调查

0. 目录 目录 引言 正文 1 您书写那种类型的Javascript 2 您在哪里使用Javascript 3 您使用Javascript多长时间了 4 您使用那种编译成JS的语言 5 您更倾向于那种样式风格 6 您使用那些ES5特性 7 您使用那些ES6特性 8 您是否书写测试 9 您是否运行持续集成CI测试 10 您如何运行测试 11 您使用那种单元测试库 12 您使用那种代码质量工具 13 您如何处理客户端依赖 14 您倾向于哪种脚本构建方案 15 您倾向于哪种JS模块加载工具 16 您

深圳魅族科技面试记录

笔试: 1.vue-router的钩子函数:beforEach.afterEeach(当时是一个多选题 愣是没看清题目 选了个生命周期的钩子函数) 2.第一次页面加载vue会触发那几个钩子? beforeCreate.created.beforeMount.mounted(Dom渲染在这个钩子函数中完成) 3.vue-router怎么获取传过来的动态参数?  <router-link :to="{path:'details',query: {参数名:参数值}}">  通过

收藏 19 个 ES6常用的简写技巧

代码精炼是每个有追求的程序所向往的,本文总结了19个JavaScript的简写技术,其中包括三元操作符.短路求值简写方式.声明变量简写方法等等,还有些自己的理解加上去:希望对你有帮助. 三元操作符 当想写if...else语句时,使用元操作符来代替 const x = 20; let answer; if(x > 10){ answer = 'is greater'; }else{ answer = 'is lesser'; } 简写: const answer = x > 10?'is gr

[js高手之路] es6系列教程 - new.target属性与es5改造es6的类语法

es5的构造函数前面如果不用new调用,this指向window,对象的属性就得不到值了,所以以前我们都要在构造函数中通过判断this是否使用了new关键字来确保普通的函数调用方式都能让对象复制到属性 1 function Person( uName ){ 2 if ( this instanceof Person ) { 3 this.userName = uName; 4 }else { 5 return new Person( uName ); 6 } 7 } 8 Person.proto

sublime 玩转react+es6

Sublime3玩转ES6+ReactJs 标签: JavaScriptreact 2016-08-22 18:04 5751人阅读 评论(0) 收藏 举报 分类: javasctipt(61) react(1) sublime(2) 开发工具(3) 原文 (http://ued.fanxing.com/emmet/) 前言 Webpack+React+ES6无疑是目前最火热的开发模式了,为了与时俱进,开始对它进行探索和学习.工欲善其事必先利其器,众所周 知,ES6和JSX都是新的语法,而目前的

带你正确了解ES6

ES6全名是ECMAScript 6,是JavaScript语言的下一代标准. Babel,可以将ES6代码转为ES5代码,是一个环境执行. ES6最常用的特性:let, const, class, extends, super, arrow functions, template string, destructuring, default, rest arguments let, const类似于var,是ES6的新的声明方式. 原型.构造函数,继承看起来更清晰. 1 class Anima

《ES6标准入门》29~48Page 字符串拓展 正则拓展

1.字符串的拓展 ES3允许使用类似\u0061这样的形式来表示字符,其中的数字是Unicode-8编码. 但如果超出\uffff的字符,必须使用双字节的形式表达,例如 \uD842\uDFB7. 在ES6中,可以用\u{20BB7}这种形式表示,其中数字是Unicode-16编码. 对于需要Unicode-16编码存储的字符,ES认为有2个字符.此时使用String.codePoinAt()方法,可以准确的识别字符串中的字符,如果需要遍历,则需要使用for...of循环. 与此相对,Strin

ES6速记手册

1.三元操作符 这是一个很好的节省代码当你想要编写一个如果. . else语句在一线. 普通写法: const x = 20;let big;if (x > 10) { 速记: const big = x > 10 ? true : false; 你还可以嵌套的if语句如下: const big = x > 10 ? " greater 10" : x < 5 ? "less 5" : "between 5 and 10"

JavaScript ES6 规范

ES6 简介 ECMAScript 6 简称 ES6,是 JavaScript 语言的下一代标准,已经在2015年6月正式发布了.它的目标是使得 JavaScript 语言可以用来编写复杂的大型应用程序,成为企业级开发语言. ECMAScript 和 JavaScript 的关系:前者是后者的语法规格,后者是前者的一种实现 Babel:将ES6代码转为ES5代码 http://babeljs.io/ image 新特性 let.const let 定义的变量不会被变量提升,const 定义的常量