for...in
for...in语句以任意顺序遍历一个对象的除Symbol以外的可枚举属性。
for...in会循环原型链上的属性
function test() { } test.prototype.testa = '123123' var c1 = new test() c1.testb = '1111' for (item in c1) { console.log(item) // testb、testa }
for...of语句在可迭代对象(包括 Array,Map,Set,String,TypedArray,arguments 对象等等)上创建一个迭代循环,调用自定义迭代钩子,并为每个不同属性的值执行语句
https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/statements/for...of