嗨,请帮我解决这个问题
var str = '10+20-10-2';
var numbers = str.replace(/ /g, '').split(/[-+*\/]/g);
var operators = str.replace(/ /g, '').split(/\d*/g);
operators.shift();
var result = +numbers[0];
for (var i = 0; i < operators.length - 1; i++) {
result = eval( result + operators[i] + numbers[i + 1] );
}
alert(result);
上面的代码工作正常,但是当我试图传递一些其他输入时
var str = '-(1)-(-2)';
var str = '-1-(-1)';
var str = '(-1)-2' ;
没有得到任何结果