This is an automated email from the ASF dual-hosted git repository. ovilia pushed a commit to branch fix-11249 in repository https://gitbox.apache.org/repos/asf/incubator-echarts.git
commit c12ee2b2b520a728670724692eb6c47063d4bfb0 Author: Ovilia <zwl.s...@gmail.com> AuthorDate: Fri Oct 25 14:10:04 2019 +0800 fix: quantityExponent #11249 --- src/util/number.js | 10 +++++++++- test/ut/spec/util/number.js | 2 ++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/src/util/number.js b/src/util/number.js index 106fc4f..aecd858 100644 --- a/src/util/number.js +++ b/src/util/number.js @@ -394,7 +394,15 @@ export function quantity(val) { * @return {number} */ export function quantityExponent(val) { - return val > 0 ? Math.floor(Math.log(val) / Math.LN10) : 0; + if (val === 0) { + return 0; + } + + var exp = Math.floor(Math.log(val) / Math.LN10); + if (val / Math.pow(10, exp) >= 10) { + exp++; + } + return exp; } /** diff --git a/test/ut/spec/util/number.js b/test/ut/spec/util/number.js index 154152e..f185c5b 100755 --- a/test/ut/spec/util/number.js +++ b/test/ut/spec/util/number.js @@ -401,6 +401,7 @@ describe('util/number', function () { expect(numberUtil.quantityExponent(1234)).toEqual(3); expect(numberUtil.quantityExponent(1234.5678)).toEqual(3); expect(numberUtil.quantityExponent(10)).toEqual(1); + expect(numberUtil.quantityExponent(1000)).toEqual(3); expect(numberUtil.quantityExponent(10000)).toEqual(4); }); @@ -429,6 +430,7 @@ describe('util/number', function () { expect(numberUtil.quantity(1234)).toEqual(1000); expect(numberUtil.quantity(1234.5678)).toEqual(1000); expect(numberUtil.quantity(10)).toEqual(10); + expect(numberUtil.quantity(1000)).toEqual(1000); expect(numberUtil.quantity(10000)).toEqual(10000); }); --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@echarts.apache.org For additional commands, e-mail: commits-h...@echarts.apache.org