for ...in 适用于可枚举的对象,迭代属性的键名;而 for ...of 适用于可迭代的对象(如数组),迭代属性的值。

JavaScript 中 for...in 和 for...of 的区别
开场
在 JavaScript 中,for...in 和 for...of 都是循环语句,但它们用途不同。
for...in
- 用于循环枚举对象的 可枚举属性,包括继承自其原型链的属性。
- 返回属性的 键名,而不是属性值。
- 经常用于遍历对象键。
for...of
- 用于循环遍历 可迭代的对象,如数组、字符串和集合。
- 返回对象的 值,而不是键名。
- 经常用于遍历收藏的元素。
主要区别
MALL的中文含义是购物中心,是区别于专卖店和百货公司的一个流行的商业模式,MALL里面是各个独立商家,自由自主的定价,各自管理自己的供销渠道和客户关系。电子商务的MALL模式其实就是对B2C业务模式做了多主体的扩展和延伸。目前具有代表性的电子商务MALL模式就是淘宝商城。比如淘宝电器城,他们的模式更像是做房地产的,阿里巴巴有着繁华的互联网商业物业,只是开了一个名字叫淘宝电器城的大市场而已,没有任
| 特征 | for...in | for...of |
|---|---|---|
| 目标对象 | 对象 | 可迭代对象 |
| 返回值 | 属性键名 | 属性值 |
| 遍历属性 | 可枚举属性 | 索引属性 |
| 原型链属性 | 包含 | 不包含 |
| 性能 | 较慢 | 较快 |
示例
for...in 对象遍历:
const obj = { name: "John", age: 30 };
for (const key in obj) {
console.log(key); // 输出: "name", "age"
}for...of 数组遍历:
const arr = [1, 2, 3, 4, 5];
for (const element of arr) {
console.log(element); // 输出: 1, 2, 3, 4, 5
}









