Показать сообщение отдельно
Старый 29.08.2007, 15:14
telit вне форума Посмотреть профиль Отправить личное сообщение для telit Найти все сообщения от telit
  № 3  
Ответить с цитированием
telit
 
Аватар для telit

Регистрация: Jul 2007
Сообщений: 306
Код:
Object.prototype.duplicateObject = function() {
	var dupObj = new Object();
	for(var i in this) {
		if (typeof(this[i]) == "object") {
			dupObj[i] = this[i].duplicateObject();
		} else {
			dupObj[i] = this[i]; 
		}
	}
	return dupObj;
}

ASSetPropFlags(Object.prototype, ["duplicateObject"], 1); // needed ATM. because Object.prototype functions shows in for..in loops
Код:
oldObject = new Object();

oldObject.foo = new Object();

oldObject.foo.dat = "Some data";

oldObject.bar = "Some other data";

newObject = oldObject.duplicateObject();