 
			
				26.07.2017, 11:53
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Аспирант 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 02.11.2016 
					
					
					
						Сообщений: 31
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	| 
	
	
		
		
			
			 
				перебор массива объектов
			 
			
		
		
		
		Всем привет! Подскажите, пожалуйста где делаю не правильно:  
Есть массив объектов, у каждого объекта есть свойство status. 
Хотелось бы передать в функцию параметр "Выполнено" и получить количество всех объектов, в которых status: "Выполнено". 
Пробую так: 
 
function getStatus(array, search) {
    var values = [];
    
    array.forEach(function(values, item) {
      if (item.key === search) {
        values.push(item.key);
      }
    });
    return values;
};
var projects = [{
      comments: "какой-то комментарий из первого объекта",
      prioritet: "4",
      status: "Выполнено"
    }, {
      comments: "какой-то комментарий из второго объекта",
      prioritet: "1",
      status: "В работе"
    }, {
      comments: "какой-то комментарий из третьего объекта",
      prioritet: "2",
      status: "Просрочено более 7 дней"
    }, {
      comments: "какой-то комментарий из четвертого объекта",
      prioritet: "3",
      status: "Выполнено"
    }, {
      comments: "какой-то комментарий из пятого объекта",
      prioritet: "5",
      status: "Просрочено до 7 дней"
    }];
    
    console.log(getStatus(projects, "Выполнено"));
 
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				26.07.2017, 12:43
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 27.05.2010 
					
					
					
						Сообщений: 33,150
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		phoenix200689,
  
function getStatus(array, search) {
    return array.filter(function(item) {
        return Object.keys(item).some(function(key) {
            return item[key] === search
        })
    })
};
var projects = [{
      comments: "какой-то комментарий из первого объекта",
      prioritet: "4",
      status: "Выполнено"
    }, {
      comments: "какой-то комментарий из второго объекта",
      prioritet: "1",
      status: "В работе"
    }, {
      comments: "какой-то комментарий из третьего объекта",
      prioritet: "2",
      status: "Просрочено более 7 дней"
    }, {
      comments: "какой-то комментарий из четвертого объекта",
      prioritet: "3",
      status: "Выполнено"
    }, {
      comments: "какой-то комментарий из пятого объекта",
      prioritet: "5",
      status: "Просрочено до 7 дней"
    }];
    console.log(getStatus(projects, "Выполнено"));
 
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				26.07.2017, 12:51
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 27.05.2010 
					
					
					
						Сообщений: 33,150
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	| 
	
	
		
		
			
			 
				фильтрация массива по условию
			 
			
		
		
		
		phoenix200689, 
 или так
 
function getStatus(array, search) {
    return array.filter(function(item) {
            return search(item)
    })
};
var projects = [{
      comments: "какой-то комментарий из первого объекта",
      prioritet: "4",
      status: "Выполнено"
    }, {
      comments: "какой-то комментарий из второго объекта",
      prioritet: "1",
      status: "В работе"
    }, {
      comments: "какой-то комментарий из третьего объекта",
      prioritet: "2",
      status: "Просрочено более 7 дней"
    }, {
      comments: "какой-то комментарий из четвертого объекта",
      prioritet: "3",
      status: "Выполнено"
    }, {
      comments: "какой-то комментарий из пятого объекта",
      prioritet: "5",
      status: "Просрочено до 7 дней"
    }];
    console.log(getStatus(projects, function(item) {
  return item.status === "Выполнено"
}));
 
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				26.07.2017, 16:25
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Аспирант 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 02.11.2016 
					
					
					
						Сообщений: 31
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		Спасибо, Рони    
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				26.07.2017, 16:58
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 27.11.2015 
					
					
					
						Сообщений: 2,899
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		Вариант - на базе оригинала 
function getStatus(array, search) {
    var values = [];
    
    array.forEach(function(item) {
      if (item.status === search) {
        values.push(item);
      }
    });
    return values;
};
var projects = [{
      comments: "какой-то комментарий из первого объекта",
      prioritet: "4",
      status: "Выполнено"
    }, {
      comments: "какой-то комментарий из второго объекта",
      prioritet: "1",
      status: "В работе"
    }, {
      comments: "какой-то комментарий из третьего объекта",
      prioritet: "2",
      status: "Просрочено более 7 дней"
    }, {
      comments: "какой-то комментарий из четвертого объекта",
      prioritet: "3",
      status: "Выполнено"
    }, {
      comments: "какой-то комментарий из пятого объекта",
      prioritet: "5",
      status: "Просрочено до 7 дней"
    }];
    
    console.log(getStatus(projects, "Выполнено"));
 
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				27.07.2017, 09:42
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Аспирант 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 02.11.2016 
					
					
					
						Сообщений: 31
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		спасибо   
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
 
 |  
  |