谁能给我解释解释?
我这么说吧,当你有一个如下数组时:
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
的生成),无需关注遍历的过程及方法。帅不帅?
https://developer.mozilla.org...