码迷,mamicode.com
首页 > 其他好文 > 详细

10th week blog1

时间:2018-11-18 16:07:57      阅读:139      评论:0      收藏:0      [点我收藏+]

标签:exp   tool   xpl   star   属性   let   class   name   script   

for each...in,for...in,for...of的examples和explaintion

(1)for...in

 for...in语句用来迭代(或者说遍历)对象的属性或数组中的元素,并对每个属性或方法执行运算。但是对象的方法不能由for...in语句来迭代,有些语句也不能有for...in来迭代,例如某些宿主对象的属性。和实力成员不同的是,静态成员也是不能迭代的。

例子:

1、用for...in语句遍历myObject对象的属性:

 Js代码  

  1. var myObject = {hisName: "javascript", age: 11, belonging: "ECMA" };  
  2. for(var prop in myObject){  
  3.     document.write("myObject." + prop + "=" myObject[prop] + "<br>");  
  4. }  

 执行的结果将会显示在浏览器中,如下:

  1. myObject.hisName = javascript  
  2. myObject.belonging = ECMA  
  3. myObject.age = 11  

2、下面用for...in语句遍历数组的元素:

Js代码  
  1. var myArray = new Array("one","two","three");  
  2. for(var index in myArray){  
  3.      document.write("myArray[" + index + "] = " + myArray[index] + "<br>"):  
  4. }  

  执行的结果将会显示在浏览器中,如下:

  1. myArray[2] = three  
  2. myArray[1] = two  
  3. myArray[0] = one  

(2)for each...in

与for...in语句不同的是,for each...in语句将遍历对象属性的值,而不是属性的名称。

例子:

1、用for each...in语句遍历myObject对象的属性:

Js代码 
  1. var myObject = {hisName: "javascript", age: 11, belonging: "ECMA" };  
  2. for(var item in myObject){  
  3.     document.write(item+ "<br>");  
  4. }  

  执行的结果将会显示在浏览器中,如下:

  1. javascript  
  2. ECMA  
  3. 11  

  2、下面用 for each...in 语句遍历数组的元素:

Js代码 
  1. var myArray = new Array("one","two","three");  
  2. for(var item in myArray){  
  3.      document.write(item + "<br>"):  
  4. }  

   执行的结果将会显示在浏览器中,如下:

  1. three  
  2. two  
  3. one

(3)for...of

JavaScript 原有的for...in循环,只能获得对象的键名,不能直接获取键值。ES6 提供for...of循环,允许遍历获得键值。for...of循环调用遍历器接口,数组的遍历器接口只返回具有数字索引的属性。这一点跟for...in循环也不一样。

例子:

1、

var arr = [‘a‘, ‘b‘, ‘c‘, ‘d‘];

for (let a in arr) {
console.log(a); // 0 1 2 3
}

for (let a of arr) {
console.log(a); // a b c d
}

2、

let arr = [3, 5, 7];
arr.foo = ‘hello‘;

for (let i in arr) {
console.log(i); // "0", "1", "2", "foo"
}

for (let i of arr) {
console.log(i); // "3", "5", "7"
}

转自:http://www.cnblogs.com/myzy/p/7238983.html

   http://hjj20040849.iteye.com/blog/1504155

10th week blog1

标签:exp   tool   xpl   star   属性   let   class   name   script   

原文地址:https://www.cnblogs.com/husuiblogs/p/9977896.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!