Article - CS339724

ThingWorx JavaScript String.prototype.localeCompare() does not support beyond first parameter

Modified: 06-Apr-2021   


Applies To

  • ThingWorx Platform 9.1 F000

Description

  • JavaScript appears to support compare with numeric value when parameters are not used
  • JavaScript code in ThingWorx
 const items =  ['100_Yale','1001_Yale','101_Yale','102_Yale','200_Yale_Test','2001_Yale_Test','201_Yale_Test'];
items.sort((a, b) => a.localeCompare(b,undefined, {numeric: true, ignorePunctuation: true}));
var result = items.join();

Results in ThingWorx Service

100_Yale,1001_Yale,101_Yale,102_Yale,200_Yale_Test,2001_Yale_Test,201_Yale_Test
  • JavaScript code in JSFiddler
     const items =  ['100_Yale','1001_Yale','101_Yale','102_Yale','200_Yale_Test','2001_Yale_Test','201_Yale_Test'];
    items.sort((a, b) => a.localeCompare(b,undefined, {numeric: true, ignorePunctuation: true}));
    document.getElementById("ye").innerText = items.join();
JSFiddler Results : 
 
100_Yale,101_Yale,102_Yale,200_Yale_Test,201_Yale_Test,1001_Yale,2001_Yale_Test
This is a printer-friendly version of Article 339724 and may be out of date. For the latest version click CS339724