| 
	
	
		
		
			
			 
				Обращение к свойству объекта через квадратные скобки. Почему?
			 
			
		
		
		
		Я выделил жирным элементы относящиеся к вопросу. 
 
var sommerTour = {   
turkey : 2000,  
spain : 3000,  
egypt : 1000  
} ;  
summerTour.calc = function (peoples, days, country)   
{  
var result = peoples*days*sommerTour[country];  
}  
return result;  
document.write ("Стоимость составит" + summerTour.calc (2, 10, "turkey" ) ) ; 
 
 
 
 
 
1. У меня вопрос-- 
Как слово turkey передаётся в эту строку? { var result = peoples*days*sommerTour [country]; }  
 
Как я понял слово turkey встаёт вместо слова country? Почему так? Почему слово turkey не заменяет полностью выражение sommerTour [country] ?? Это ведь sommerTour [country] единый элемент функции, почему он полностью не заменяется словом turkey ?? 
2. Ещё-- 
допустим как-то вставилось слово turkey в функцию, и получилось это sommerTour[turkey] 
Но ведь обращение к методам объекта идёт через точку, а не через квадратные скобки. 
Вот так должно быть ведь sommerTour.turkey 
 
 
Я думал может country принимает значение свойства turkey объекта sommerTour. Но нет, тут summerTour.calc (2, 10, "turkey" ) передаётся просто слово turkey. Строка. Безо всякий обращений к объекту. 
		
	
		
		
		
		
		
		
		
						  
				
				Последний раз редактировалось koderman, 06.02.2014 в 02:30.
				
				
			
		
		
	
		
		
	
	
	 |