谁能给我解释解释?
1 回答
富国沪深
TA贡献1790条经验 获得超9个赞
我这么说吧,当你有一个如下数组时:
var users = [
{ lastName: 'Li', firstName: 'Lei'
},
{ lastName: 'Han', firstName: 'Meimei'
}
];现在我希望你处理这个数组,给其中每一个对象加一个fullName字段,就把lastName和firstName拼一起就行(简单吧)。
当你用相对原始的语法处理时,可能是这样的:
for(var i = 0; i < users.length; i++){ var user = users[i];
user.fullName = user.lastName + user.firstName;
}代码是对的,但却不好(优秀),为什么?原因有2
创建了与主业务无关的
for loop创建了与主业务无关的变量
i
用forEach的好处是什么?答案就是解决了上面那2个缺陷,代码如下:
users.forEach(function(user, index, arr){
user.fullName = user.lastName + user.firstName;
});这里,你只需要关注主业务(
fullName的生成),无需关注遍历的过程及方法。帅不帅?
添加回答
举报
0/150
提交
取消
