#337·wtfjs

`for..in` 迭代数组索引: `string`, 不仅仅是 `number`

作者: Jamlee创建于 2025年2月6日更新于 2025年2月6日
标签new-example

在遍历数组的索引时,索引值是"字符串"而不是"数字"。JavaScript let a = [1, 2, 3]; for (let i in a) { console.log(typeof i); // string } 数组本质上是对象: 1. 在 JavaScript 中,数组是一种特殊类型的对象。数组的索引实际上是对象的属性名,只不过这些属性名是以数字形式表示的字符串。例如,数组 [1, 2, 3] 可以看作是对象 {0: 1, 1: 2, 2: 3}。 for...in 循环的工作原理。 2. for...in 循环会遍历对象的所有可枚举属性。对于数组,这些属性就是数组的索引。在 JavaScript 中,对象的属性名(包括数组的索引)总是为字符串类型。

内容来源: denysdovhan/wtfjs