Это то, что у меня есть. Я пытаюсь обновить значение firstName в выбранном элементе массива. Когда я выполняю код, он просто добавляет то, что я пытаюсь идентифицировать как свойство и желаемое значение для выбранного элемента массива.Как изменить свойство элементов массива
var _ = require('underscore');
var data = [
{id:1, firstName: 'John', lastName: 'Smith'},
{id:2, firstName: 'John', lastName: 'Doe'},
{id:3, firstName: 'Johnny', lastName: 'Smith'}
];
module.exports.lookupById = function(id, newName) {
console.log('Lookup By ID: ' + (id));
Id = _.where(data, {id: id });
console.log(Id);
newId = Id;
newId['firstName'] = newName;
console.log(newId);
Этот код находится в файле, который выполняет код выше
var foo = require('./hwa1');
foo.lookupById(2, 'Mary');
Является ли это Lodash или Underscore? Какая версия? – Phil
Извините, что не поставил это. Это подчеркивание. –
['_.where'] (http://underscorejs.org/#where) не возвращает то, что вы думаете о нем, попробуйте [' _.find'] (http://underscorejs.org/#find) , Кроме того, вы не объявили 'Id' или' newId', а 'newId' полностью избыточным – Phil