 
			
				26.08.2020, 10:58
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Новичок на форуме 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 26.08.2020 
					
					
					
						Сообщений: 6
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	| 
	
	
		
		
			
			 
				Как посчитать количество элементов в объекте по определенному условию?
			 
			
		
		
		
		
{
developer_name0: 'Egor',
application_system0: 'Android',
developer_name1: 'Sasha',
application_system1: 'Android',
developer_name2: 'Egor',
application_system2: 'IOS',
developer_name3: 'Sasha',
application_system3: 'IOS',
developer_name4: 'Egor',
application_system4: 'Android',
developer_name5: 'Sasha',
application_system5: 'IOS',
developer_name6: 'Artur',
application_system6: 'Android',
}
или же массив обьектов
 
[{developer_name: 'Egor',
application_system: 'Android'},
{developer_name: 'Sasha',
application_system: 'Android'},
{developer_name: 'Egor',
application_system: 'IOS'},
{developer_name: 'Sasha',
application_system: 'IOS'},
{developer_name: 'Egor',
application_system: 'Android'},
{developer_name: 'Sasha',
application_system: 'IOS'},
{developer_name6: 'Artur',
application_system6: 'Android'}
]
Или же в виде массива
 
[ 'Egor',
'Android',
 'Sasha',
 'Android',
 'Egor',
 'IOS',
 'Sasha',
 'IOS',
 'Egor',
 'Android',
 'Sasha',
 'IOS',
 'Artur',
 'Android']
 
Имена могут быть разными, операционки нет.\
 Ожидаемый результат
Egor: Android -2, IOS -1 
Sasha: Android - 1, IOS - 2 
Artur: Android - 1, IOS - 0  
		
	
		
		
		
		
		
		
		
						  
				
				Последний раз редактировалось ddoss, 26.08.2020 в 11:12.
				
				
			
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				26.08.2020, 11:06
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 14.01.2015 
					
					
					
						Сообщений: 12,989
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	| 
	
	
		
		
		
		
		 Самое неудачное, что можно придумать для связи сущностей, это именование ключей как name1, name2, ... 
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				26.08.2020, 11:08
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Новичок на форуме 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 26.08.2020 
					
					
					
						Сообщений: 6
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	| 
	
	
		
		
		
		
		 Понимаю, поэтому массив дописал) 
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				26.08.2020, 11:12
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 14.01.2015 
					
					
					
						Сообщений: 12,989
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	| 
		
			Сообщение от ddoss
			
		
	 | 
 
	| 
		Понимаю, поэтому массив дописал
	 | 
 
	
 
 А как в массиве понять какой элемент его связан с другим (ми)?  
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				26.08.2020, 11:13
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Новичок на форуме 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 26.08.2020 
					
					
					
						Сообщений: 6
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	| 
	
	
		
		
		
		
		 первый со вторым, третий с четвертым, по парам 
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				26.08.2020, 11:14
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Новичок на форуме 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 26.08.2020 
					
					
					
						Сообщений: 6
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	| 
	
	
		
		
		
		
		 Посмотрите еще на массив обьектов, мне кажется он вам приятнее всего будет 
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				26.08.2020, 11:19
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 14.01.2015 
					
					
					
						Сообщений: 12,989
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	| 
		
			Сообщение от ddoss
			
		
	 | 
 
	| 
		первый со вторым, третий с четвертым, по парам
	 | 
 
	
 
 Уверены в этом? А если порядок в исходнике будет нарушен? Откуда такие данные и почему они не могут иметь структуру:
 
[
    {'Egor' : 'Android'},
    {'Sasha' : 'Android'},
     ....
]
//или
[
    {name: 'Egor', system: 'Android'},
    {name: 'Sasha', system: 'Android'},
     ....
]
И по какому признаку получилось -  Egor: Android -2, IOS -1, как Egor связан с IOS в исходных данных?  
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				26.08.2020, 11:25
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Новичок на форуме 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 26.08.2020 
					
					
					
						Сообщений: 6
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	| 
	
	
		
		
		
		
		 Можно и нарушить структуру если так легче решить задачу, например, в массиве обьектов - 3 обьект это {developer_name: 'Egor', application_system: 'IOS'} вот и связь) 
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				26.08.2020, 11:32
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 14.01.2015 
					
					
					
						Сообщений: 12,989
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	| 
		
			Сообщение от ddoss
			
		
	 | 
 
	| 
		Можно и нарушить структуру
	 | 
 
	
 
 У вас мягко говоря и нет никакой вменяемой структуры, в этом и беда, а если нарушить ваш порядок, то это вообще хрен знает что и как решать. 
 
	
 
	| 
		
			Сообщение от ddoss
			
		
	 | 
 
	| 
		например, в массиве обьектов - 3 обьект это {developer_name: 'Egor', application_system: 'IOS'}
	 | 
 
	
 
 Что за бред. У вас прописано Егоров несколько, это один и тот же Егор или это разные ребятки? Если это один и тот же, то как скрипту это понять, потому что  "первый со вторым, третий с четвертым ..."? А как же третий?
 
У вас в исходнике бардак, и если этот бардак с сервера пришел, то разбирайтесь на нем и отдавайте клиенту именно структурированные связанные данные, а не "кофейную гущу". Если это формируется на клиенте, то формируйте должным образом, дабы не перебирать все заново гадая что чему принадлежит.  
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				26.08.2020, 11:35
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 27.05.2010 
					
					
					
						Сообщений: 33,150
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		ddoss,
  
<script>
let data = [{developer_name: 'Egor',
application_system: 'Android'},
{developer_name: 'Sasha',
application_system: 'Android'},
{developer_name: 'Egor',
application_system: 'IOS'},
{developer_name: 'Sasha',
application_system: 'IOS'},
{developer_name: 'Egor',
application_system: 'Android'},
{developer_name: 'Sasha',
application_system: 'IOS'},
{developer_name: 'Artur',
application_system: 'Android'}
];
const fn = data => {
let obj = {};
for(let {developer_name : a, application_system : b} of data) {
if(obj[a] === undefined) obj[a] = {};
if(obj[a][b] === undefined) obj[a][b] = 0;
obj[a][b]++;
}
return obj;
}
document.write(JSON.stringify(fn(data)))
  </script>
 
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
 
 
 
 
 
	 | 
 
 
 |