AngularJS Live Example

by Silambarasan_sundaram

HTML

<script src="http://code.angularjs.org/1.0.0rc4/angular-1.0.0rc4.min.js"></script>
<div ng:app="myApp">
 <div ng-controller="HelloCntl">
 <ul>
    <li ng-repeat="friend in friends | weDontLike:'DIY'">
        <span> {{friend.id}} - </span>
        <span> {{friend.name}}</span>
    </li>
 </ul>
 </div>
</div>

CSS

span
{
 width: 200px;   
}

JavaScript

angular.module('myApp',[]).filter('weDontLike', function(){
    
    return function(items, name){
        
        var arrayToReturn = [];   
        //alert(items.length);
        for (var i=0; i<items.length; i++){
            //alert(items[i].categories.length);
            for(var j=0; j< items[i].categories.length; j++){
                    if (items[i].categories[j].name != name) {
                        arrayToReturn.push(items[i].categories[j]);
                    }                
            }            
        }
        
        return arrayToReturn;
    };
});

function HelloCntl($scope) {
    $scope.friends = [
            {
                "id":"1",
                "title":"Title",
                "categories":[
                    {"id":"14","name":"DIY"}
                ],
                "topics":[
                    {"id":"12","name":"Junk Food"}
                ]
            },
            {
                "id":"2",
                "title":"Title 2",
                "categories":[
                    {"id":"4","name":"Test"},
                    {"id":"14","name":"DIY"},
                ],
                "topics":[
                    {"id":"2","name":"Food"}
                ]
            }
    ];
}