HTML Preparation code:
AخA
 
1
<script src='https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.5/lodash.min.js'></script>
Script Preparation code:
 
var test = [{"value":"97535676-acbb-41f4-b8ea-91e8e5e3fc0d","label":"Overview"},{"value":"f1e5845d-b5a4-4725-9813-f601eaed6826","label":"test 1"},{"value":"056d7e5a-b947-4c10-8b38-13416deebe4a","label":"Announcements"},{"value":"18149d83-8191-4c60-afca-d976f6f63ca5","label":"Browse buttons"},{"value":"20b145fa-14ae-457c-9fec-04fdd48ddba2","label":"ztest"},{"value":"00142552-9bf6-49a8-829d-152d8448ac5f","label":"Watson News"},{"value":"578695c6-4e4c-4c8d-ba8a-2ede7b6abd19","label":"Filtered"},{"value":"6b6fef15-a13e-423b-875d-7700737dccf4","label":"Curated"}]
Tests:
  • lowdash

     
    _.sortBy(test, [
    name => {
    const priority = ['overview'];
    if (_.includes(priority, name)) {
    return _.indexOf(priority, name);
    } else {
    return name.length;
    }
    },
    name => name,
    ]);
  • JS

     
    test.sort(function(a, b) {
            const valueA = a.label.toUpperCase();
            const valueB = b.label.toUpperCase();
            if (valueB === 'OVERVIEW') {
              return 1;
            } else if (valueA === 'OVERVIEW') {
              return -1;
            }
            return valueA < valueB ? -1 : valueA > valueB ? 1 : 0;
          });
Rendered benchmark preparation results:

Suite status: <idle, ready to run>

Previous results

Experimental features:

  • Test case name Result
    lowdash
    JS

    Fastest: N/A

    Slowest: N/A

Latest run results:
Run details: (Test run date: 5 years ago)
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.149 Safari/537.36
Chrome 80 on Mac OS X 10.15.1
View result in a separate tab
Test name Executions per second
lowdash 85012.2 Ops/sec
JS 590956.7 Ops/sec