Необходимо на typescript сделать метод для клонирования объекта. С учетом того, что элементы могут быть ссылкой на этот же объект
Код:
|
var obj: any = {
x:{y: 'qwe'},
y: "qwe"
};
obj['x']['a'] = obj;
obj['x']['b'] = obj['x']; |
при "стандартном" методе не выйдет с рекурсии
Код:
|
function cloneObject(obj) {
var clone = {};
for (var i in obj) {
if (typeof (obj[i]) == "object" && obj[i] != null) clone[i] = cloneObject(obj[i]);
else clone[i] = obj[i];
}
return clone;
} |
Как можно обойти такой вариант?