Javascript中的简单平均值

时间:2015-06-09 01:07:20

标签: javascript html5

这看起来应该很简单,但我有点困惑:

这是我的javescript和html:

<script>


var n, m, l, ave;


var mean = function() {

    // get input data
    n = +document.getElementById("Number one").value;
    m = +document.getElementById("Number two").value;
    l = +document.getElementById("Number two").value;

    // get the average
    ave = (n+m+l)/3;

    // output result   
    document.getElementById("ave").innerHTML = "Your average is: " + ave;}

然后是html

    <label>Data one:<input type="text" id="Number one"></label>
<label>Data two:<input type="text" id="Number two"></label>
 <label>Data three:<input type="text" id="Number three"></label>
<input type="button" onclick="mean();" value="Your average">
<div id="ave"></div>

虽然数学不起作用。不知道为什么。请帮忙。

编辑:感谢大家帮忙解决我的愚蠢错误

4 个答案:

答案 0 :(得分:2)

复制/粘贴错误。你读了两次“第二号”。

顺便说一句,在ID中有空格是很奇怪的。 :)

答案 1 :(得分:0)

你要求第二个号码

FragmentActivity

答案 2 :(得分:0)

你有一个错字,你使用“二号”两次更改l = +document.getElementById("Number two").value;使用“三号”

答案 3 :(得分:0)

首先,您不需要将该函数声明为var,如果您愿意,可以这样做:

function mean(){//...code}

只有当您希望将其作为参数提供给另一个函数时,才需要将其声明为var。您编写的方式也会阻止您在定义之前调用该函数,但这是一个更高级的主题。如果您想了解更多信息,请阅读:https://javascriptweblog.wordpress.com/2010/07/06/function-declarations-vs-function-expressions/

然后,您将两次输入“二号”输入值。它应该是:

n = +document.getElementById("Number one").value;
m = +document.getElementById("Number two").value;
l = +document.getElementById("Number three").value;

而不是:

n = +document.getElementById("Number one").value;
m = +document.getElementById("Number two").value;
l = +document.getElementById("Number two").value;