如果我使用generator函数是Object原型变得可以遍历,会产生什么负面影响吗?
代码如下
Object.prototype[Symbol.iterator] = function* () {
for(let value in this){
yield this[value]
}
}
其实主要想问的是会产生什么负面影响,就是为什么不建议修改,而不是要找替代方案
如果我使用generator函数是Object原型变得可以遍历,会产生什么负面影响吗?
代码如下
Object.prototype[Symbol.iterator] = function* () {
for(let value in this){
yield this[value]
}
}
其实主要想问的是会产生什么负面影响,就是为什么不建议修改,而不是要找替代方案
Object 的遍历是缺少意义的,因为Object是无序的。
可以使用Object.keys Object.values
这些方法去获取键和值的遍历结果,但是每次执行后返回的顺序是不一定的,但是键值是对应的。
13 回答13k 阅读
7 回答2.2k 阅读
3 回答1.3k 阅读✓ 已解决
6 回答1.3k 阅读✓ 已解决
2 回答1.4k 阅读✓ 已解决
3 回答1.4k 阅读✓ 已解决
6 回答1.1k 阅读
建议不要修改原型 了解下lodash.js