for in 和 for of的区别

羅小子
羅小子
羅小子
12
文章
3
评论
十一月 25, 202013:14:24 评论

重点内容:

  • for in 取 key; for of 取 value
  • for of 只能用于数组遍历,for in还可以用于对象属性的遍历

遍历数组:

let array = [1,2,3,'lynn','Lanny']
console.log('for of: ')
for (let value of array){
  console.log(value);
}
// for of控制台输出:
1
2
3
lynn
Lanny
for (let key in array){
  console.log(key);
}
// for in控制台输出:
0
1
2
3
4

遍历对象:

function Person(){
  this.name = 'Lanny';
  this.age = '24';
  this.sleep = ()=>{
    console.log('I am sleeping~~~~');
  }
}

Person.prototype.sayHello = (name)=>{
  console.log('hello ' + name);
}

let person = new Person();
person.sayHello('Lynn');

for(let key in person){
  if(person.hasOwnProperty(key)){      //不遍历原型方法
    console.log(key);
  }
}

// 控制台输出
hello Lynn
name
age
sleep
羅小子
整理vue面试题(二) 前端

整理vue面试题(二)

vue常见面试题整理第二章: 1.vue优点? 轻量级框架、简单易学、双向数据绑定、组件化、数据和结构的分离、虚拟DOM、运行速度快。 2.vue父组件向子组件传递数据? 通过属性方式传递数据,子组件...
整理vue面试题(一) 前端

整理vue面试题(一)

Vue.js是前端三大框架之一,很多公司都在使用。相比于其它两个框架,vue的学习成本是最低,也是最容易上手的。深受后端程序猿的喜爱。 一,生命周期面试题 1.什么是vue的生命周期? vue生命周期...
javascript面试题继承实现的几种方式。 前端

javascript面试题继承实现的几种方式。

在面试中经常会被问到怎么实现一个继承?实现继承有那几种方式?问这个是要考面试者对于js的基础掌握程度。 如果要实现继承,肯定需要一个父类,先定义一个父类: // 定义一个人 function Peop...
javascript面试题防抖节流 前端

javascript面试题防抖节流

在前端开发中经常会处理input事件和滚动条监听事件,为了更好提升性能开发者可以使用防抖和节流。 防抖(debounce):触发高频时间后n秒内函数只会执行一次,如果n秒内高频时间再次触发,则重新计算...
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: