| 
	| 
	
	| 
		
	| 
			
			 
			
				06.10.2009, 15:47
			
			
			
		 |  
	| 
		
			
			| Новичок на форуме       |  | 
					Регистрация: 19.02.2008 
						Сообщений: 9,177
					 
		
 |  |  
	| 
	
 
	| Сообщение от Beck |  
	| Эх, никто не хочет разбираться в коде. |  
	
 Вы бы отформатировали его хотя бы. Вы думаете это реально прочесть?  
if(m['lat'][i] == all_lat[i2] && m['lng'][i] == all_lng[i2]){m['lat'].splice(i,1);m['lng'].splice(i,1);m['mcount']--;}
 |  |  
	| 
		
	| 
			
			 
			
				06.10.2009, 16:03
			
			
			
		 |  
	| 
		
			
			| Аспирант       |  | 
					Регистрация: 08.08.2009 
						Сообщений: 95
					 
		
 |  |  
	| Сейчас выложу кусок кода, где сравнения производятся. |  |  
	| 
		
	| 
			
			 
			
				06.10.2009, 16:04
			
			
			
		 |  
	| 
		
			|  | 
       |  | 
					Регистрация: 27.12.2008 
						Сообщений: 4,201
					 
		
 |  |  
	| 
	
 
	| Сообщение от Kolyaj |  
	| Вы бы отформатировали его хотя бы |  
	
 хотя бы вот этим beautifier , если сам не хочешь читабельно писать |  |  
	| 
		
	| 
			
			 
			
				06.10.2009, 16:28
			
			
			
		 |  
	| 
		
			|  | 
       |  | 
					Регистрация: 27.12.2008 
						Сообщений: 4,201
					 
		
 |  |  
	| а вообще, я бы принимал массив вида 
[{"lat":"56.50097598931345","lng":"21.01032257080078"},{"lat":"56.49983904637648","lng":"20.999422073364258"}]
и заменил вот этот код  на
 
for( var i=0; i<markers.length; i++ )
    for( var j=0; j<allMarkers.length; j++ )
        if( markers[i].lat == allMarkers[j].lat &&   markers[i].lng == allMarkers[j].lng ) {
            markers.splice( i, 1 );
            i--;
            break;
        }
for( var i=0; i<markers.length; i++ )
    insertMarker( markers[i] );
allMarkers = allMarkers.concat( markers );
 |  |  
	| 
		
	| 
			
			 
			
				06.10.2009, 16:43
			
			
			
		 |  
	| 
		
			
			| Аспирант       |  | 
					Регистрация: 08.08.2009 
						Сообщений: 95
					 
		
 |  |  
	| 
// all_lat это общий массив широт(latitude), которые уже на карте
//m[] это данные из ответа сервера	
	
console.log(all_lat); = ["56.50097598931345", "56.49983904637648"]
console.log(m['lat']); = ["56.50097598931345", "56.53734016907318", "56.49983904637648"]
	newlat = array_diff(m['lat'],all_lat);
	newlng = array_diff(m['lng'],all_lng);
        // вот это в firebug выдает, при появлении на карте трех маркеров, из которых 1 новый
        console.log(newlat); = [undefined, "56.53734016907318"]
// newlat это массив широт для новых маркеров на карте
 |  |  
	| 
		
	| 
			
			 
			
				06.10.2009, 16:47
			
			
			
		 |  
	| 
		
			
			| Аспирант       |  | 
					Регистрация: 08.08.2009 
						Сообщений: 95
					 
		
 |  |  
	| 
	
 
	| Сообщение от x-yuri   |  
	| а вообще, я бы принимал массив вида 
 
[{"lat":"56.50097598931345","lng":"21.01032257080078"},{"lat":"56.49983904637648","lng":"20.999422073364258"}]
и заменил вот этот код на
 
 
for( var i=0; i<markers.length; i++ )
    for( var j=0; j<allMarkers.length; j++ )
        if( markers[i].lat == allMarkers[j].lat &&   markers[i].lng == allMarkers[j].lng ) {
            markers.splice( i, 1 );
            i--;
            break;
        }
for( var i=0; i<markers.length; i++ )
    insertMarker( markers[i] );
allMarkers = allMarkers.concat( markers );
 |  
	
 Спасибо! Вроде все понятно, только вот i--; не совсем уловил зачем? 
Можете объяснить? |  |  
	| 
		
	| 
			
			 
			
				06.10.2009, 16:48
			
			
			
		 |  
	| 
		
			|  | 
       |  | 
					Регистрация: 27.12.2008 
						Сообщений: 4,201
					 
		
 |  |  
	| 
	
 
	| Сообщение от Beck |  
	| Вроде все понятно, только вот i--; не совсем уловил зачем? |  
	
 а ты попробуй поразбираться/поотлаживать... Это полезно. В общем console.log в помощь   |  |  
	| 
		
	| 
			
			 
			
				06.10.2009, 16:49
			
			
			
		 |  
	| 
		
			
			| Аспирант       |  | 
					Регистрация: 08.08.2009 
						Сообщений: 95
					 
		
 |  |  
	| 
	
 
	| Сообщение от x-yuri   |  
	| а ты попробуй поразбираться/поотлаживать... Это полезно. В общем console.log в помощь   |  
	
 Сейчас же примусь!    
Теперь хочу реализовать проверку зон, из которых маркеры уже вытаскивались из базы.
 
Только вот как бы это реализовать, чтобы не было "слепых зон","пустых зон".			 Последний раз редактировалось Beck, 06.10.2009 в 16:56.
 |  |  
	| 
		
	| 
			
			 
			
				06.10.2009, 17:01
			
			
			
		 |  
	| 
		
			|  | Профессор       |  | 
					Регистрация: 03.04.2009 
						Сообщений: 1,263
					 
		
 |  |  
	| 
x-yuri
	
 
	| Сообщение от x-yuri   |  
	| а вообще, я бы принимал массив вида 
[{"lat":"56.50097598931345","lng":"21.01032257080078"},{"lat":"56.49983904637648","lng":"20.999422073364258"}]
 |  
	
 , 
 а я бы (если записей станет больше)
 
{"head":["lat", "lng"], "rows":[["56.50097598931345", "21.01032257080078"],["56.49983904637648", "20.999422073364258"]]}
Компактней, можно читабельные имена полей задавать, без ущерба для траффика. |  |  
	| 
		
	| 
			
			 
			
				06.10.2009, 17:05
			
			
			
		 |  
	| 
		
			|  | 
       |  | 
					Регистрация: 27.12.2008 
						Сообщений: 4,201
					 
		
 |  |  
	| 
	
 
	| Сообщение от Beck |  
	| Только вот как бы это реализовать, чтобы не было "слепых зон","пустых зон". |  
	
 а откуда они появяться?
e1f , пожалуй +1   |  |  |  |