Inaccurate Javascript Timer

Using window.setInterval over a period of time. compare start with end

by DSCallards

HTML

<div id="output"></div>

CSS

#output{
    width:300px;
    word-wrap:break-word}

JavaScript

var $output = $('#output');

function display(text){
    $output.append(text + '<br/>');
}

var intervalms = 500,
    totalTimems = 60000;
    timeCount = 0;
    start = Date.now();

display('started: ' + totalTimems + 'ms');

function instance(){ 
    var time = Date.now() - start; 
    $output.append('.');
    timeCount = timeCount + intervalms;
    if (timeCount >= totalTimems){
        window.clearInterval(timer);
        display('<br/>interval time: '+ timeCount+ ', actual ms taken:' + time);
    }
}

var timer = window.setInterval(instance, intervalms );