学无先后,达者为师

网站首页 编程语言 正文

E6新语法for of 和ES3的for in 有什么区别?useState为什么是用数组结构而不用对象?

作者:zhangyizuishuai 更新时间: 2023-07-24 编程语言

for of 是es6新增的循环方式,请问for in 和for of的区别

1  for in会返回数组中所有可枚举属性,包括原型链上可枚举的属性,会遍历对象的整个原型链,性能较差不推荐使用;
for of 不会往原型链下继续循环遍历,只会返回数组索引对应的属性值;

 for in 遍历数组拿到的是数组的索引
 for in 遍历对象拿到的是对象的key值;
 for of 遍历数组拿到的是数组的值
 for of 不能用来遍历obj {a:1}因为对象不是可迭代属性;
总结
for in 循环主要是用来遍历对象的,【它虽然可以用来遍历数组,但是因为性能原因不适用于遍历数组。】;
for of 循环可以用来遍历数组,不能用来遍历对象【遍历对象会报错】;

useState为什么是用数组结构而不用对象?

因为数组的结构可以自己任意定义变量的名称,而如果使用对象的话就只能跟hooks内部的变量名一个的名字,如果需要自定义名字则要用E6语法:去改名字,这样代码量会变大。

原文链接:https://blog.csdn.net/zhangyizuishuai/article/details/131807311

  • 上一篇:没有了
  • 下一篇:没有了
栏目分类
最近更新