С eval и Math будет все намного проще. Правда подозреваю, что это не то, что вам нужно.
Вот такие примеры решает:
23 - 7 * 34 + 2 / Math.sin(30)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<input type="text" id="calc">
<button onclick="calc()">Решить</button>
<div id="result"></div>
<script>
function calc(){
var calc = document.getElementById('calc').value;
var result = document.getElementById('result');
result.innerHTML = eval(calc);
}
</script>
</body>
</html>