SO - 30296405

by Arun P Johny

HTML

<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.15/angular.js"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.4/css/bootstrap.css">
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.15/angular-sanitize.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.15/angular-resource.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.15/angular-route.js"></script>
<div ng-controller="AppController">
    <table>
        <tr ng-repeat="obj in tsc.tabEntries" ng-class-odd="'odd'" ng-class-even="'even'">
            <td ng-repeat="field in tsc.entryFields">{{ obj[field].name || obj[field] }}</td>
        </tr>
    </table>
</div>

JavaScript

var app = angular.module('my-app', [], function () {})

app.controller('AppController', function ($scope) {
    $scope.tsc = {
        tabEntries: [{
            a: 1,
            b: 2,
            c: {
                name: '3'
            }
        }],
        entryFields: ['a', 'b', 'c']
    };
    
    $scope.getValue = function(obj){
        return obj.name || obj
    }
})