javascript 中 for…in 和 for…of 循環的主要區別在于:內容:for…in 遍歷對象屬性或索引,而 for…of 遍歷數組元素或可迭代元素。順序:for…in 順序不定,而 for…of 順序穩定。變量類型:for…in 變量保存屬性名稱,而 for…of 變量保存元素值。終止:for…in 遍歷完自有屬性終止,而 for…of 遍歷完所有元素終止。
JavaScript 中 for…in 和 for…of 循環的區別
在 JavaScript 中,for…in 和 for…of 都是循環遍歷對象或數組的方法,但在用法和遍歷方式上存在以下主要區別:
1. 遍歷內容
for…in: 遍歷對象的屬性或索引
for…of: 遍歷數組或可迭代對象的元素
2. 遍歷順序
for…in: 遍歷順序是不確定的,可能會受對象屬性添加或刪除的影響
for…of: 遍歷順序是穩定的,始終按照插入或創建元素的順序進行遍歷
3. 變量類型
for…in: 變量類型為字符串,保存屬性或索引名稱
for…of: 變量類型為元素值本身
4. 終止條件
for…in: 當循環遍歷完所有自有屬性(不包括繼承的屬性)時終止
for…of: 當循環遍歷完所有可迭代元素時終止
總結:
使用 for…in: 當需要遍歷對象的屬性或索引名稱時
使用 for…of: 當需要遍歷數組或可迭代對象的元素本身時