for...in循环:
? ? ?for...in语句用来迭代(或者说遍历)对象的属性或数组中的元素,并对每个属性或方法执行运算。但是对象的方法不能由for...in语句来迭代,有些语句也不能有for...in来迭代,例如某些宿主对象的属性。和实力成员不同的是,静态成员也是不能迭代的。
例子:
1、用for...in语句遍历myObject对象的属性:
?
var myObject = {hisName: "javascript", age: 11, belonging: "ECMA" };
for(var prop in myObject){
document.write("myObject." + prop + "=" myObject[prop] + "<br>");
}
?
?执行的结果将会显示在浏览器中,如下:
?
myObject.hisName = javascript myObject.belonging = ECMA myObject.age = 11
?
?
2、下面用for...in语句遍历数组的元素:
?
var myArray = new Array("one","two","three");
for(var index in myArray){
document.write("myArray[" + index + "] = " + myArray[index] + "<br>"):
}
?
?
?
??执行的结果将会显示在浏览器中,如下:
?
myArray[2] = three myArray[1] = two myArray[0] = one
?
for each...in :
与for...in语句不同的是,for each...in语句将遍历对象属性的值,而不是属性的名称。
例子:
?
1、用for?each...in语句遍历myObject对象的属性:
?
var myObject = {hisName: "javascript", age: 11, belonging: "ECMA" };
for(var item in myObject){
document.write(item+ "<br>");
}
??执行的结果将会显示在浏览器中,如下:
?
javascript ECMA 11?
?
? 2、下面用 for?each...in?语句遍历数组的元素:
?
var myArray = new Array("one","two","three");
for(var item in myArray){
document.write(item + "<br>"):
}
???执行的结果将会显示在浏览器中,如下:
?
?
three two one?
?