Как посчитать количество элементов в объекте по определенному условию? 
		
		
		
		
{
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  | 
	
		
 Самое неудачное, что можно придумать для связи сущностей, это именование ключей как name1, name2, ... 
	 | 
	
		
 Понимаю, поэтому массив дописал) 
	 | 
	
		
 Цитата: 
	
  | 
	
		
 первый со вторым, третий с четвертым, по парам 
	 | 
	
		
 Посмотрите еще на массив обьектов, мне кажется он вам приятнее всего будет 
	 | 
	
		
 Цитата: 
	
 
[
    {'Egor' : 'Android'},
    {'Sasha' : 'Android'},
     ....
]
//или
[
    {name: 'Egor', system: 'Android'},
    {name: 'Sasha', system: 'Android'},
     ....
]
И по какому признаку получилось - Egor: Android -2, IOS -1, как Egor связан с IOS в исходных данных?  | 
	
		
 Можно и нарушить структуру если так легче решить задачу, например, в массиве обьектов - 3 обьект это {developer_name: 'Egor', application_system: 'IOS'} вот и связь) 
	 | 
	
		
 Цитата: 
	
 Цитата: 
	
 У вас в исходнике бардак, и если этот бардак с сервера пришел, то разбирайтесь на нем и отдавайте клиенту именно структурированные связанные данные, а не "кофейную гущу". Если это формируется на клиенте, то формируйте должным образом, дабы не перебирать все заново гадая что чему принадлежит.  | 
	
		
 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>
 | 
| Часовой пояс GMT +3, время: 14:16. |