Angular: Empty Fiddle
http://angularjs.org/
HTML
<script src="http://code.angularjs.org/angular-1.0.1.js"></script>
<div id='a' ng-controller="MyCtrl">
<div ng-class="['box', class, {true:'mini', false: 'large'}[!isMaximized]]">mini</div>
<div ng-class="['box', class, class2, {true:'mini', false: 'large'}[isMaximized]]">large</div>
<div ng-class="['box', class, class2, {undefined:'undef', null:'undef'}[isMinimized]]">undefined</div>
</div>
CSS
.mini{
font-size: 1em;
color:red;
}
.large{
font-size:3em;
color:blue;
}
.a.b{
text-transform: uppercase;
}
.c.d{
text-transform: lowercase;
}
.undef{
color:orange;
}
JavaScript
var myApp = angular.module('myApp',[]);
function MyCtrl($scope) {
$scope.isMaximized = false;
$scope.class = 'a b';
$scope.class2 = ['c', 'd'].join(' ');
$scope.isMinimized = null;
}