data=prompt( "数式を入力してください", "12+345+*+" ).split(""); arr=[]; for(i in data){ if(data[i].match(/\d/)) arr.push(data[i]-0); else if(data[i].match(/[+-\/\*]/)){ x2=arr.pop(); x1=arr.pop(); switch(data[i]){ case "+":arr.push(x1+x2);break; case "-":arr.push(x1-x2);break; case "*":arr.push(x1*x2);break; case "/":arr.push(x1/x2);break; } } else{ e=1;break; } } alert(arr[0]);
普通の電卓より作るのがラクだったりする。
「逆ポーランド式」ってのが何かわからない人は自分で調べてね☆