Показать сообщение отдельно
  #14 (permalink)  
Старый 22.02.2011, 21:50
Аватар для poorking
prodigy
Отправить личное сообщение для poorking Посмотреть профиль Найти все сообщения от poorking
 
Регистрация: 01.11.2010
Сообщений: 503

B@rmaley.e><e,
с новым вызовом конструктора не получится, потому как в конкретном случае конструктор генерирует некоторые локальные перемненные рандомно.
Kolyaj,
например:
function constr(){
	var r = Math.round(Math.random()*3)
	var a = 0;
	
	this.geta = function(){
		return a
	}
	
	this.calc = function(){
		switch(r){
			case 0:
				a = 0;
			case 1:
				a += 11
			break;
			case 2:
				a += 22
			break;
			case 3:
				a += 33
			break;
		}
	}
}

var o = new construct() //в экземпляре, на который получили ссылку есть локальная переменная, генерируемая рандомно (r)


нужно проверить, например, стоит ли выполнять calc().

если geta() возвращает после метода calc() больше, ну скажем 100, то не выполнять, иначе, выполнить

я хотел создать ссылку на копию объекта, выполнить calc(), проверить, и потом в зависимости от результата выполнять или не выполнять calc() по ссылке на оригинал
__________________
readOnly
Ответить с цитированием