javascript - sortby using Underscore -
i trying sort records using underscore _.sortby() function . requirement give higher priority names starting _ . eg . if code
var patients = [ [{name: 'john', roomnumber: 1, bednumber: 1}], [{name: 'lisa', roomnumber: 1, bednumber: 2}], [{name: '_a', roomnumber: 2, bednumber: 1}], [{name: 'omar', roomnumber: 3, bednumber: 1}] ]; var sortedarray = _.sortby(patients, function(patient) { return patient[0].name; }); i want have record _a, roomnumber: 2, bednumber: 1 on top . in sense want sort ignore strings starting _
try code.
var patients = [ [{name: '_john', roomnumber: 1, bednumber: 1}], [{name: 'lisa', roomnumber: 1, bednumber: 2}], [{name: '_a', roomnumber: 2, bednumber: 1}], [{name: 'amar', roomnumber: 3, bednumber: 1}] ]; var sortedbychar = _.sortby(patients, function(patient) { return (patient[0].name.indexof('_') != 0) ? patient[0].name[0] : patient[0].name[1]; }); var finalarray = _.sortby(sortedbychar, function(patient) { return (patient[0].name.indexof('_') != 0); }); alert(json.stringify(finalarray)); <script src="https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.8.3/underscore-min.js"></script> you can play around fiddle adding underscores other names , see how sorts.
Comments
Post a Comment