Показать сообщение отдельно
  #8 (permalink)  
Старый 03.12.2016, 22:38
Профессор
Отправить личное сообщение для DivMan Посмотреть профиль Найти все сообщения от DivMan
 
Регистрация: 08.03.2016
Сообщений: 429

Первые массивы нормально сортируются, а те, которые сами подгружаются, то они не сортируются

http://plnkr.co/edit/K8EdtgqrClE7PeZHLeCZ?p=preview

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
</head>
<body>
<script src="http://vk.com/js/api/openapi.js"></script>

	<script>

	function foo() {

	VK.init({
			apiId: 5580872
		});


	VK.Auth.login(function(response){
	
		if(response.session){
		 
		 
	
			VK.api('friends.get', {'user_id' : '26291131', 'fields' : 'bdate'}, response => {
				if(response.error){
					alert(response.error.error_msg);
				}
				else{
					let userData = response.response;
					var arrUser = []
					var arrAge = [];
					var arrAge2 = [];
					var now = new Date(); 
					var god = now.getFullYear()
					
					
					
					
					for(var h = 0; h < userData.length; h++){
						arrUser.push(userData[h].first_name + ' ' + userData[h].last_name)
						
						if(typeof userData[h].bdate == 'string' && userData[h].bdate.split('.')[2]){
						arrAge.push(userData[h].first_name + ' ' + userData[h].last_name + ' ' + (god - parseInt((userData[h].first_name + ' ' + userData[h].last_name + ' ' + userData[h].bdate.split('.')[2]).split(' ')[2])))
							
						}
					}
					
					for(var c = 0; c < arrAge.length; c++){
						arrAge2.push(arrAge[c].split(' '))
						
					}
					
					
					//сортировка по возрасту
					
				
						arrAge2.sort(function(a, b){
						return a[2] < b[2]
					})
    
			
					
					for(var i = 0; i < arrAge2.length; i++){
						console.log(arrAge2[i])
					}
					
					
					
				}
			});
			

		}
		else{
			alert('Не удалось авторизироваться')
		}
	}, 2);
}
foo()



//точно такойже массив

var arr = [
  ['вапкр', 'птртвы',  '26'],
  ['иавовы', 'татьправпа', '14'],
  ['пролрлбпвы', 'Ячсми', '22'],
  ['енгщз', 'выапрпр','22'],
  ['еншщшз', 'олдщне', '23'],
  ['ппппппп', 'истттттт', '14'],
  ['уууууу', 'ллллллл',  '20']
];

	arr.sort(function(a, b){
						return a[2] < b[2]
					})
    
			
					
					for(var i = 0; i < arr.length; i++){
						console.log(arr[i])
					}
					
		console.log('-------------------------')	

	</script>

</body>
</html>
Ответить с цитированием