JSFiddle - React, Tailwind, and code Playground
JavaScript
var nums = ['1.1.1',
'10.2.3',
'2.6.7',
'21.10.4',
'3.10.12',
'4.11.5',
'4.1.16',
'6.4.23']
nums.sort(function(a, b) {
var nums1 = a.split(".");
var nums2 = b.split(".");
for(var i = 0; i < nums1.length; i++) {
if(nums2[i]) {
if(nums1[i] !== nums2[i]) {
return nums1[i] - nums2[i];
}//else continue
} else {
return 1;//no second number in b
}
}
});
console.log(nums);