diff --git a/src/sprintf.js b/src/sprintf.js index 65d6324..03017dd 100644 --- a/src/sprintf.js +++ b/src/sprintf.js @@ -63,7 +63,7 @@ } if (re.number.test(ph.type)) { - is_positive = arg >= 0 + is_positive = arg >= 0 || isNaN(arg) } switch (ph.type) { diff --git a/test/test.js b/test/test.js index 9588da6..df236ab 100644 --- a/test/test.js +++ b/test/test.js @@ -41,6 +41,7 @@ describe('sprintfjs', function() { assert.equal('f', sprintf('%.1t', false)) assert.equal('false', sprintf('%t', '')) assert.equal('false', sprintf('%t', 0)) + assert.equal('NaN', sprintf('%f', NaN)) assert.equal('undefined', sprintf('%T', undefined)) assert.equal('null', sprintf('%T', null))