jQuery Sort Elements by attribute value

HTML

<ul>
    <li data-time="5">One</li>
    <li data-time="523">Two</li>
    <li data-time="12">Three</li>
    <li data-time="3">Four</li>
    <li data-time="2">Five</li>
    <li data-time="12">Six</li>
    <li data-time="1">Seven</li>
    <li data-time="678">Eight</li>
</ul>

CSS

li:before {content: attr(data-time) ": "; color: #aaa;}

JavaScript

var items = $('li');
console.log(items);

items.sort(function(a, b){
    return +$(a).data('time') - +$(b).data('time');
});
    
items.appendTo('ul');