fix: 四则运算
This commit is contained in:
parent
cdea1f2ba6
commit
eeb4f8a0fa
10
lib/calc.js
10
lib/calc.js
@ -1,4 +1,8 @@
|
|||||||
module.exports = function (s) {
|
/* eslint-disable */
|
||||||
|
// 四则运算
|
||||||
|
|
||||||
|
!(function () {
|
||||||
|
var calculate = function (s) {
|
||||||
s = s.trim();
|
s = s.trim();
|
||||||
const stack = new Array();
|
const stack = new Array();
|
||||||
let preSign = '+';
|
let preSign = '+';
|
||||||
@ -18,7 +22,7 @@ module.exports = function (s) {
|
|||||||
numStr = `${calculate(s.slice(i + 1, j))}`;
|
numStr = `${calculate(s.slice(i + 1, j))}`;
|
||||||
i = j;
|
i = j;
|
||||||
}
|
}
|
||||||
if (isNaN(Number(s[i]) && s[i] !== '.') || i === n - 1) {
|
if ((isNaN(Number(s[i])) && s[i] !== '.') || i === n - 1) {
|
||||||
let num = parseFloat(numStr);
|
let num = parseFloat(numStr);
|
||||||
switch (preSign) {
|
switch (preSign) {
|
||||||
case '+':
|
case '+':
|
||||||
@ -46,3 +50,5 @@ module.exports = function (s) {
|
|||||||
}
|
}
|
||||||
return ans;
|
return ans;
|
||||||
};
|
};
|
||||||
|
module.exports = calculate;
|
||||||
|
})();
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user