为什么我的计算器不起作用?

时间:2014-05-08 17:28:52

标签: javascript prompt

它没有要求提示,你能告诉我它为什么不起作用吗?我对javascript有点不高兴。这几乎就是全部。

<html>
<head>
<link rel="stylesheet" type="text/css" href="style.css">
</head>
<body>
<h1>Justin's Experiment's</h1>



<script>
var ask = prompt("enter first number") 
var ksa = prompt("enter second number")
var rew = prompt("Enter function")
document.write(ask rew ksa)
</script>







</body>



</html>

1 个答案:

答案 0 :(得分:1)

JSFIDDLE

这是一种方法:

HTML:

<p id="result"><p>

使用Javascript:

var lblResult = document.getElementById('result');

var number1 = prompt("enter first number");
var number2 = prompt("enter second number");
var operator = prompt("Enter function");

var result = calculate(number1, number2, operator);

if (result === null) lblResult.innerText = "Invalid operator";
else lblResult.innerText = number1 + operator + number2 + " = " + result;

function calculate(n1, n2, op) {

    n1 = Number(n1);
    n2 = Number(n2);


    switch (op) {
        case "+":
        return n1 + n2;
        case "-":
        return n1 - n2;
        case "/":
        return n1 / n2;
        case "*":
        return n1 * n2;
        default:
        return null;
    }
}

你的document.write没有任何“+”,也没有计算结果。为了得到结果,函数calculate与2个数字和运算符一起传递。我们使用Number转换2号来转换数字中的字符串,然后如果操作符被支持则结果将是等式的结果,如果操作符不存在则结果为null。然后,您可以轻松地将结果或消息打印给用户!

我添加了<p> id =“result”,因为最好在标签内打印结果然后使用document.write。在javascript中,要获取html元素,您只需执行以下操作:

var lblResult = document.getElementById('result');

然后您可以使用以下内容更改文字:

lblResult.innerText = "text";