| 
 | 
	
	
	
	
	
		
	
		
		
		
			
			 
			
				22.02.2012, 20:03
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 15.02.2011 
					
					
					
						Сообщений: 471
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		Во-первых массивы и массивоподобные объекты это разные сущности, которые итерируются совершенно по-разному. А во-вторых уже давным-давно написаны универсальные функции для работы с коллекциями, например в  Underscore.  
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				22.02.2012, 20:04
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 15.02.2011 
					
					
					
						Сообщений: 471
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	
		
			Сообщение от vasa_c
			 
		
	 | 
 
	| 
		Вы считаете JS идеальным языком?
	 | 
 
	
 
 Нет, не считаю.  
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				22.02.2012, 20:04
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 12.03.2008 
					
					
					
						Сообщений: 183
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	| 
		
			 Цитата: 
		
	 | 
 
	| 
		я еще раз повторю
	 | 
 
	
 
 я дал примерчик - написать функцию, учитывающую все возможные типы данных, работающую во всех браузерах и получить при этом удовольствие.  
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				22.02.2012, 20:06
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 12.03.2008 
					
					
					
						Сообщений: 183
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	| 
		
			 Цитата: 
		
	 | 
 
	| 
		давным-давно написаны универсальные функции для работы с коллекциями, например в Underscore.
	 | 
 
	
 
 Понятно что функции написаны и что более-менее шарящий в предмете человек тоже их напишет если нужно. 
Сама проблема именно в том, что эти функции пришлось писать, вместо того, чтобы просто работать с языком.  
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				22.02.2012, 20:07
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 12.03.2008 
					
					
					
						Сообщений: 183
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	| 
		
			 Цитата: 
		
	 | 
 
	| 
		Во-первых массивы и массивоподобные объекты это разные сущности, которые итерируются совершенно по-разному.
	 | 
 
	
 
 Чем должна отличаться сущность итерации по Array() и HTMLCollection?  
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				22.02.2012, 20:09
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 15.02.2011 
					
					
					
						Сообщений: 471
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	
		
			Сообщение от vasa_c
			 
		
	 | 
 
	
		Понятно что функции написаны и что более-менее шарящий в предмете человек тоже их напишет если нужно. 
Сама проблема именно в том, что эти функции пришлось писать, вместо того, чтобы просто работать с языком.
	 | 
 
	
 
 Конструкция  for...in работает с абсолютно любыми видами коллекций, чем не универсальность?  
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				22.02.2012, 20:10
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 15.02.2011 
					
					
					
						Сообщений: 471
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	
		
			Сообщение от vasa_c
			 
		
	 | 
 
	| 
		Чем должна отличаться сущность итерации по Array() и HTMLCollection?
	 | 
 
	
 
 Тем что в массивах есть индексы, а во всех прочих - имена свойств, то есть первые являются числами, а вторые - строками.  
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				22.02.2012, 20:23
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Профессор 
				
				
				
				
	
 
 
			 | 
			  | 
			
				
				
					Регистрация: 22.02.2012 
					
					
					
						Сообщений: 163
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	| 
		
			Сообщение от vasa_c
			
		
	 | 
 
	| 
		я дал примерчик - написать функцию, учитывающую все возможные типы данных, работающую во всех браузерах и получить при этом удовольствие.
	 | 
 
	
 
 я нихрена не понял О_О
в чем ад работы с типами данных с typeof в javascript? можно пример кода где проявляется адовость?  
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				22.02.2012, 20:32
			
			
			
		  
	 | 
 
	
		
		
		
			
			
			
				
				
				
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 10.07.2008 
					
					
					
						Сообщений: 3,873
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		Вообще надо хотя бы разок заглянуть в  http://javascript.ru/ecma/part11#a-11.4.3 и «ад кромешный» рассеется. 
-------------
 
	
 
	| 
		
			Сообщение от DreamTheater
			
		
	 | 
 
	| 
		Все верно, в JS null является объектом без прототипа, соответственно его тип - object.
	 | 
 
	
 
 Это  Object.prototype.__proto__===null, сам  null является отдельным типом, то что выдает  typeof — соглашение
 
	
 
	| 
		
			Сообщение от Dmitry Soshnikov
			
		
	 | 
 
	
		Всего стандарт определяет девять типов, причём непосредственно доступны в ECMAScript программе, всего шесть: 
 
• Undefined 
• Null 
• Boolean 
• String 
• Number 
• Object 
 
Остальные три типа доступны лишь на уровне реализации…
	 | 
 
	
 
 
	
 
	| 
		
			Сообщение от Dmitry Soshnikov
			
		
	 | 
 
	| 
		оператор typeof возвращает строковое значение, взятое из жёстко закреплённой таблицы, где прописано: “для null – возвращать "object"
	 | 
 
	
 
 http://dmitrysoshnikov.com/ecmascrip...nyih-znacheniy 
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				22.02.2012, 20:38
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Профессор 
				
				
				
				
	
 
 
			 | 
			  | 
			
				
				
					Регистрация: 22.02.2012 
					
					
					
						Сообщений: 163
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	| 
	
	
		
		
		
		
		 Octane, 
 ты стандарт наизусть знаешь? 
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
 
 |  
  |