1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
| 'use strict';
|
| /**
| * Compare semver version numbers
| *
| * @param {String} a
| * @param {String} b
| * @api public
| */
|
| module.exports = function(a, b) {
| var i;
| var len;
|
| if (typeof a + typeof b !== 'stringstring') {
| return false;
| }
|
| a = a.split('.');
| b = b.split('.');
| i = 0;
| len = Math.max(a.length, b.length);
|
| for (; i < len; i++) {
| if ((a[i] && !b[i] && parseInt(a[i]) > 0) || (parseInt(a[i]) > parseInt(b[i]))) {
| return 1;
| } else if ((b[i] && !a[i] && parseInt(b[i]) > 0) || (parseInt(a[i]) < parseInt(b[i]))) {
| return -1;
| }
| }
|
| return 0;
| };
|
|