Всем доброго времени!
Есть вот такой простенький исходный объект в форме связного списка:
const baseList = {
value: 6,
next: {
value: 4,
next: {
value: 2,
next: null,
},
},
}
Его я прогоняю через такую функцию:
function backwards(list) {
let prevValue;
while (list) {
let next = list.next;
list.next = prevValue;
prevValue = list;
list = next;
}
return prevValue;
}
В итоге после вызова
backwards(baseList)
я вывожу в консоль исходный объект
console.log(baseList)
и с удивлением обнаруживаю что он равен
{ value: 6, next: null }
, а не
null
как я рассчитывал. Подскажите как и на каком моменте так вышло? По ходу у меня пробелы в знаниях о ссылочных типах данных...