as3中for in 和 for each in的区别

xiaoxiao2022-06-14  50

 

 

与for...in循环不同的是,for each...in循环中的迭代变量包含属性所保存的值,而不包含属性的名称(或主键,索引).

例如:  1 var myObj:Object = {x:20, y:30};  2 for (var i:String in myObj) {  3     trace (i + ": " + myObj[i]);  4 }  5 // output:  6 // x: 20  7 // y: 30  由上代码可知道for..in是把数组的元素或对象的属性名 依次取过来。  1 var myObj:Object = {x:20, y:30};  2 for each(var num in myObj) {  3     trace (num);  4 }  5 // output:  6 // 20  7 // 30  由上代码可知道for each..in是把对象的属性名对应的值 依次取过来。  1 var myArray:Array = ["one", "two", "three"];  2 for (var i:String in myArray) {  3     trace (myArray[i]);  4 }  5 /* output  6 one  7 two  8 three  9 */  10  如果用for each..in返回将是undefined。  对于XML文档:   1 var myXML:XML = <users>  2 <fname>Jane</fname>  3 <fname>Susan</fname>  4 <fname>John</fname>  5 </users>;  6 for (var item in myXML.fname) {  7        trace(item);  8 }  9 /* output  10 0  11 1  12 2  13 */  14  如果用for each..in返回的将是: 1 /* output  2 Jane  3 Susan  4 John  5 */  6

相关资源:Java 面经手册·小傅哥(公众号:bugstack虫洞栈).pdf
转载请注明原文地址: https://www.6miu.com/read-4936496.html

最新回复(0)