for...in 語句

JavaScript for...in 語句

for...in 語句用於對數組或者對象的屬性進行循環操做。javascript

for ... in 循環中的代碼每執行一次,就會對數組的元素或者對象的屬性進行一次操做。html

語法:

 (變量  對象)
{
    在此執行代碼
}forin

「變量」用來指定變量,指定的變量能夠是數組元素,也能夠是對象的屬性。java

實例:

使用 for ... in 循環遍歷數組。數組

<html>
<body>

<script type="text/javascript">
var x
var mycars = new Array()
mycars[0] = "Saab"
mycars[1] = "Volvo"
mycars[2] = "BMW"


</script>

</body>
</html>for (x in mycars)
{
document.write(mycars[x] + "<br />")
}
 
爲一個對象的每一個屬性,或一個數組或集合中的每一個元素,執行一個或多個語句。
 for ( [var] variable in {object | array | collection})
   statement
實參
 
 
variable

必選。 一個變量,能夠是 object 的任何屬性名、array 的任何索引或 collection 的任何元素。app

object

要對其進行循環的 JScript 對象。ide

array

要對其進行循環的數組。 它能夠是 JScript Array 對象或 .NET Framework 數組。函數

collection

要對其進行循環的集合。 它能夠是從 .NET Framework 實現 IEnumerable 或 IEnumerator 接口的任何類。oop

statement

可選。 要爲 object 的每一個屬性或者 array 或 collection 的每一個元素執行的語句。 能夠是複合語句。ui

備註
 
 

在循環的每一次循環以前,會爲 variable 分配 object 的下一個屬性名、array 的下一個索引或 collection 的下一個元素。 您能夠將 variable 用於循環中的任何語句,以便引用 object 的屬性或 array 的元素。spa

當在一個對象上循環時,沒有辦法肯定或控制將對象的成員名賦給 variable 的順序。 for...in 語句沒法在非 JScript 對象的成員上循環,例如,.NET Framework 對象。

數組按元素順序循環,從最小的索引開始,到最大的索引結束。 由於 JScript Array 對象多是稀疏的,因此 for...in 語句只訪問數組中已定義的元素。 JScript Array 對象還能夠具備 expando 屬性,在這種狀況下,會爲 variable 分配數組索引做爲屬性名。 若是數組是多維 .NET Framework 數組,則只枚舉第一維。

爲了在集合上循環,會按元素在集合中的顯示順序將元素分配給 variable

示例 1
 
 
下面的示例闡釋了 for ... in 語句的用法,該語句將一個對象用做一個相關數組。
 
 
function ForInDemo1()
{
    // Initialize the object.
    var obj = {"a" : "Athens" , "b" : "Belgrade", "c" : "Cairo"}

    // Iterate over the properties and create the string result.
    var s = ""
    for (var key in obj)
    {
        s += key + ":  " + obj[key];
        s += "\n";
    }
    return (s);
}

此函數返回包含如下內容的字符串:

 
 
a:  Athens
b:  Belgrade
c:  Cairo
相關文章
相關標籤/搜索