order linear treemodel
by gschutz
HTML
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/3.10.0/lodash.min.js"></script>
JavaScript
var a = [{path: [1]}, {path: [2]}, {path: [1,3]}, {path: [1,4]}, {path: [2,5]}, {path: [1,3,6]}, {path: [1,3,7]}, {path: [1,3,6,8]}];
var filtered = _.filter(a, function(d) {
return _.contains(d.path.join('.'), '1.3.');
});
console.log(_.map(filtered, function(d){return d.path.join('.')}));
function table(data) {
var r = [];
_.each(data, function(l) {
r.push(l.join(' '));
r.push('<br>');
});
}
var a = [{path: [1]}, {path: [2]}, {path: [10]}, {path: [20]}, {path: [1,5]}, {path: [1,5,6]}, {path: [1,4]}];
var s = _.sortBy(a, function(d) {
var k = '';
return _.map(d.path, function(i) {
return k += _.padLeft(i, 6, '0');
});
return k;
});
console.log(_.map(s, function(d){return d.path.join('.')}));