JSFiddle - React, Tailwind, and code Playground

HTML

<script src="http://cloud.github.com/downloads/emberjs/ember.js/ember-0.9.5.min.js"></script>
<script type="text/x-handlebars">
    OriginalVal => {{#each A.collection}}{{val}}{{/each}}    
    VS     
    CopiedVal => {{#each A.copies}}{{val}}{{/each}}
</script>

JavaScript

A = Ember.Application.create();

A.Class = Ember.Object.extend(Ember.Copyable, {
    val: null,
    copy: function(deep) {
        var copiedVal = Ember.copy(this.get('val'), deep);
        return this.constructor.create({val: copiedVal});
    }    
});


(function() {
    
    var obj = A.Class.create({val:"foo"});
    var collection = [obj];
    var copies = Ember.copy(collection, true);
    copies[0].set('val', 'bar');
    
    A.setProperties({
        collection: collection,
        copies: copies        
    });
    
})();