for循环的一个变体是for ... in循环,它可以把一个对象的所有属性依次循环出来:
可见用传统的o.key,即对象.key的形式是不能得到对象值的。
这里用o[key],即数组的形式得到了对象值。
大概就是因为for循环是把对象看成了数组,所以要用数组的形式来进行处理。
注意:返回的属性都是字符串类型的,但是属性值就是保持原始的类型了。这是因为实际上JavaScript对象的所有属性都是字符串,不过属性对应的值可以是任意数据类型。
for循环的一个变体是for ... in循环,它可以把一个对象的所有属性依次循环出来:
可见用传统的o.key,即对象.key的形式是不能得到对象值的。
这里用o[key],即数组的形式得到了对象值。
大概就是因为for循环是把对象看成了数组,所以要用数组的形式来进行处理。
注意:返回的属性都是字符串类型的,但是属性值就是保持原始的类型了。这是因为实际上JavaScript对象的所有属性都是字符串,不过属性对应的值可以是任意数据类型。