上面的代码遍历了 obj 对象的所有属性,并输出了属性名称。需要注意的是,for...in 循环不保证属性遍历的顺序是固定的,所以不能在遍历对象的时候依赖属性遍历的顺序。另外,for...in 循环还有一个重要的用途,就是遍历对象的原型链上的属性。function Person() { this.name = 'Tom'; } Person.prototype.age = ...
总的来说,for...of循环是一个方便且直观的工具,用于遍历各种可迭代对象的元素。然而,需要注意的是,它不能用于普通对象的遍历,因为普通对象不是可迭代的。如果需要遍历对象的属性,推荐使用for...in循环或其他遍历对象属性的方法。 嵌套循环 嵌套循环是指在一个循环体内包含另一个循环体。它常常用于处理多维数组和...
for-in 循环遍历的是对象的属性,而不是数组的索引。因此, for-in 遍历的对象便不局限于数组,还可以遍历对象。例子如下:const person = { fname: "san", lname: "zhang", age: 99};let info;for(info in person) {console.log("person[" + info + "] = " + person[info]);} 结果如下:per...
遍历普通数组,建议使用原生的遍历方法for,不要贪图方便,因为for in 和for each in均存在浏览器的兼容问题,不能保证它们对数组的遍历顺序(如果对顺序的不作要求的话,可以使用for in ,但本人不建议)。 遍历对象,由于for没办法提供理想的遍历,因而只能选择其他方法。这里建议使用for in ,从上面讲解的区别,for in比...
不能使用 for...of 语句来直接遍历一个普通对象,只能用来遍历一个可迭代的对象 如果使用 for...of 来遍历一个数组,返回的结果是数组的元素值; 3、for...in 和 for...of 的异同点 (1)相同点 for...in 和 for...of 都可以用来遍历一个可迭代对象,比如Array、Map、Set、arguments 等; ...
所以for-in更适合遍历对象,通常是建议不要使用for-in遍历数组。 for-of for-of可以简单、正确地遍历数组(不遍历原型method和name)。 varmyArray = [1, 2, 4, 5, 6, 7]; myArray.name= "数组"; myArray.getName=function() {returnthis.name; }for(varvalue of myArray) { ...
for (let i in nums) { console.log(typeof nums[i] + nums[i]); } 1. 2. 3. 4. 5. 6. 7. 8. 9. 两种不同的循环都可以对数组进行遍历,并且它们遍历的结果也都是一样的 2.对对象的遍历 // 通过两种循环遍历对象 let obj = {
for in 是用来遍历对象属性的。数组也是一个对象,并且是一个内建的Array对象实例。 for in 遍历非自定义的对象时,只能获取到指定的属性。对于你提供的数组就是0, 2, 4。 可以对于普通的循环,还会访问不存在的属性,1和3,所以会有undefined. 对于Array内部的实现不太了解,仅仅是从对象的属性访问角度来分析这个问...
key:对象的属性名。 object:被遍历的对象。 需要注意的是,for...in 循环不仅遍历对象自身的属性,还会遍历继承的属性,因此在遍历对象时,通常需要使用 hasOwnProperty 方法来过滤掉继承的属性。 示例: 复制 // 使用 for...in 循环遍历对象的属性 let person = { ...
1、for循环 for循环是根据数组的长度去确定循环次数的,而对象是没有长度这个属性的,所以,for循环不能用来遍历对象,可以用来遍历数组和字符串。 for (i = 0; i < loopTimes; i++) { console.log(i); } 2、For...in循环 for...in循环也是JS常用的循环方式,可以遍历对象的属性,而不是数组的索引。所以...