Добрый день!
Не могу самостоятельно разобраться, почему так странно работает lodash.
1. Вариант:
var _=require('lodash');
var users = {
'fred': { 'user': 'fred', 'age': 40 },
'pebbles': { 'user': 'pebbles', 'age': 1 }
};
var map1 = _.mapValues(users, function() {
return users; // возвращает ДВА!!!! раза:
// { fred:
// { fred: { user: 'fred', age: 40 },
// pebbles: { user: 'pebbles', age: 1 } },
// pebbles:
// { fred: { user: 'fred', age: 40 },
// pebbles: { user: 'pebbles', age: 1 } } }
});
console.log(map1);
Но если передаем в функцию значение, то возвращает один раз:
var _=require('lodash');
var users = {
'fred': { 'user': 'fred', 'age': 40 },
'pebbles': { 'user': 'pebbles', 'age': 1 }
};
var map1 = _.mapValues(users, function(o) {
return o; // возвращает один раз
});
console.log(map1);]
Почему так, ведь и в одном и в другом случае я прошу вернуть всего-лишь объект user???