Я клонирую переменную для манипуляции в одной из моих функций
Я думаю, что вы имеете в виду эту строку кода:
var referenceMatrixs = vm.referenceMatrix;
Это не клонировать что-либо. Вместо этого он назначает ссылку на объект. Все изменения в referenceMatrixs
также будут видны в vm.referenceMatrix
.
Обратите внимание, что ваши выходные операторы do клонируют объект:
console.log('BEFORE -> ', JSON.parse(JSON.stringify(vm.referenceMatrix)));
Однако клон используется только для вывода и сразу же выбрасывается. Это много кода, практически бесполезного. Вы получите точно такой же результат с
console.log('BEFORE -> ', vm.referenceMatrix);
Поскольку этот оператор не изменяет объект, здесь нет причин для клонирования.