for ( key in obj)不定义key可以吗?
来源:17-8 其它知识点-解答
锅里的芒果
2018-01-15
function myforEach (obj,fn){
// var key
if(obj instanceof Array){
obj.forEach(function(item,index){
fn(item,index) //调用fn函数并传实参进去
})
} else {
for (key in obj) {
fn (obj[key],key)
}
}
}
obj1={
'name':'wendy',
'age':28
}
myforEach(obj1,function(value,key){
console.log('this is value',value)
})
老师,你的例子中我自己写了一下,发现不定义key也是可以的,
key属于参数,如果不定义key,JS解析的时候就会自动把它解析为undefined,我们这里可以不定义key吧?
写回答
1回答
-
双越
2018-01-15
key 怎么是参数呢?
你把 var key 这一行注释掉,然后后面直接用了 for (key in obj) {...} ,这样 key 会成为一个全局变量。污染了全局环境,后果非常严重!!!
00
相似问题