在js中for in的用法

2021-06-17 20:52:57 字數 774 閱讀 1525

for(var i=0;i

例如:var a = ["a","b","c"];

for(var el in a)

這個就是窮舉出a中的所有元素,當然上面這個例子是可以用

for(var i=0,len=a.length;i

alert(a[i]); }

這種方式進行迴圈列出的,不過有時候這種方式就不一定奏效了。

例如:var a = ;

這個時候就只能用for in來窮舉了。

乙個物件是否可以進行for in窮舉,我們可以通過propertyisenumerable屬性來判斷,說明如下:

propertyisenumerable 屬性

返回 boolean 值,指出所指定的屬性是否為乙個物件的一部分以及該屬性是否是可列舉的。

object.propertyisenumerable(proname)

【引數】

object:必選項。乙個物件。

proname:必選項。乙個屬性名稱的字串值。

【說明】

如果 proname 存在於 object 中且可以使用乙個 for…in 迴圈窮舉出來,那麼 propertyisenumerable 屬性返回 true。

如果 object 不具有所指定的屬性或者所指定的屬性不是可列舉的,那麼 propertyisenumerable 屬性返回 false。

典型地,預定義的屬性不是可列舉的,而使用者定義的屬性總是可列舉的。

propertyisenumerable 屬性不考慮原型鏈中的物件。

for in 和 in 的用法

1.for.in 宣告用於對陣列或者物件的屬性 可列舉的,即包括例項中的屬性,也包括原型中的可列舉屬性 進行迴圈 迭代操作。對於陣列 迭代出來的是陣列元 素,對於物件 迭代出來的是物件的屬性 1 for var i 0,len a.length i 以上 完全可以用for in代替 1 var a ...

Js中for in 和for of的區別

for in的使用array.prototype.sayhello function array.prototype.str 我是陣列原型的字串 定義乙個陣列 var arr 1 2,3 4 console.log arr 當前列印的沒有原型上的屬性和方法 1,2,3,4 使用for in迴圈 fo...

js中for in遍歷物件屬性

for in函式會遍歷物件中的所有可列舉屬性,那麼,問題來了,不可列舉屬性又是什麼?每個物件的屬性自身,都有乙個屬性,enumerable,若屬性a的屬性值即a.enumerable為false,則屬性a為不可列舉屬性。為何要定義enumerable屬性呢?就是為了一下三個操作。enumerable...