renderAgo(delta): concise "50 seconds ago" rendering function

a fork from http://jsfiddle.net/tylerbrinks/kRH5T/ with improved "time-ago" rendering function (interprit)

by Adrien Joly

HTML

<div class="relativeTime">coco</div>

JavaScript

(function($) {

    var timeScales = [    
        {"minute(s)":60},
        {"hour(s)":60},
        {"day(s)":24},
        {"month(s)":30}
    ];
    
    function renderAgo(delta) {
        var t = (delta / 1000);
        var lastScale = "second(s)";
        for (i in timeScales) {
            var scaleTitle;
            for (scaleTitle in timeScales[i]);
            var scaleVal = timeScales[i][scaleTitle];
            
            if (t / scaleVal < 1) break;
            t = t / scaleVal;
            lastScale = scaleTitle;
        }
        var rnd = Math.round(t);
        return rnd + " "
            + lastScale.replace(/\(s\)/g, rnd > 1 ? "s" : "");
    }
    

    $(function() {
        var d = new Date();
        var items = $(".relativeTime");
        setInterval(function(){
            items.html(renderAgo(new Date() - d));
        }, 1000);
    });
    
})(jQuery);