14 lines
372 B
JavaScript
14 lines
372 B
JavaScript
|
module.exports = function cmp (a, b) {
|
||
|
var pa = a.split('.');
|
||
|
var pb = b.split('.');
|
||
|
for (var i = 0; i < 3; i++) {
|
||
|
var na = Number(pa[i]);
|
||
|
var nb = Number(pb[i]);
|
||
|
if (na > nb) return 1;
|
||
|
if (nb > na) return -1;
|
||
|
if (!isNaN(na) && isNaN(nb)) return 1;
|
||
|
if (isNaN(na) && !isNaN(nb)) return -1;
|
||
|
}
|
||
|
return 0;
|
||
|
};
|