JSFiddle - React, Tailwind, and code Playground

by scispear

HTML

<script src="https://github.com/downloads/wycats/handlebars.js/handlebars-1.0.0.beta.6.js"></script>
<script src="http://cloud.github.com/downloads/emberjs/ember.js/ember-latest.js"></script>
<script type="text/x-handlebars">
    <h3>
        Length: {{App.length}}
        <br />
        Count: {{App.count}}
        <br />
        Concat: {{App.sum}}
    </h3>
    {{#each App.myArray}}
        {{this}}        
    {{/each}}
</script>

JavaScript

var mx = Ember.Mixin.create({
    count: function (key) {
        var ct=0;
        // sure you come up with something better then this.
        for (var i = 0, j = this.length; i < j; i++) {
            this[i] === key && ++ct;
        }
        return ct;
    },
    
    sum: function(){ // concat is already taken.
        var sum='';
        this.forEach(function(item){ sum += item; });
        return sum;
    }.property('length')
});
    
   
mx.apply(Array.prototype);

App = Em.Application.create({
    myArray: ['a','b','c','d','a'],
    
    lengthBinding: 'myArray.length',
    sumBinding: 'myArray.sum',
    count: 0
});


App.set('count', App.myArray.count('a'));