富国沪深
我这么说吧,当你有一个如下数组时: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的生成),无需关注遍历的过程及方法。帅不帅?