1 заметка с тегом

clone РСС

2 июня 2009, 16:44

Клонирование объекта в Javascript (Clone object)

Иногда нужно объект скопировать, и вставить в другое место.
Для этого, можно использовать вот такую простую функцию, найденую на просторах интернетов ;)
function clone(o) {
	if(!o || "object" !== typeof o)  {
		return o;
	}
	var c = "function" === typeof o.pop ? [] : {};
	var p, v;
	for(p in o) {
		if(o.hasOwnProperty(p)) {
			v = o[p];
			if(v && "object" === typeof v) {
				c[p] = clone(v);
			}
		else c[p] = v;
		}
	}
	return c;
}

Если вы хотите перенести кусок HTML, то не забывайте о innerHTML, будет гораздо быстрее :D. Если же работа на прямую с объектами, то ещё легко можно пользоваться функцией eval().
clone