使用Javascript计算圆周和圆面积-函数不起作用

使用Javascript计算圆周和圆面积-函数不起作用,javascript,if-statement,math,geometry,Javascript,If Statement,Math,Geometry,我正在尝试创建一个简单的javascript应用程序,它将要求用户输入圆的半径,作为回报,在用户点击“计算”后,将以句子形式显示周长和面积。现在,当用户输入一个数字并点击calculate时,什么也没有发生 HTML文档中包含的JavaScript如下所示: <!DOCTYPE html> <html> <head> <meta charset = "utf-8"> <title>Create a Circle</titl

我正在尝试创建一个简单的javascript应用程序,它将要求用户输入圆的半径,作为回报,在用户点击“计算”后,将以句子形式显示周长和面积。现在,当用户输入一个数字并点击calculate时,什么也没有发生

HTML文档中包含的JavaScript如下所示:

<!DOCTYPE html>
<html>
<head>
  <meta charset = "utf-8">
  <title>Create a Circle</title>
  <h1 style="text-align:center">Create a Circle!</h1>
  <br>
  <div style="text-align:center">
  Enter the radius for your circle:
  <input type="text" id="txtRadius" size="10" />
  <br>
  <input type="button" value="Calculate" onclick="CalculateArea()"/>

  <script>

  function print() {
    var p = 
    document.createElement("p"),
    text = Array.prototype.join.call(arguments,",");
    p.textContent = text;
    document.getElementById("console").appendChild(p);
    return text;    
  }

  function CalculateCircumference() {
    var radius =
    parseInt(document.getElementById('txtRadius').value);//String to Integer

    if (0 < radius)
        print("The circumference of the circle is " + (radius * 2 * Math.PI);
    else
        print("Error - radius must be a whole number greater than 0.");
    return false;
  }

  function CalculateArea() {
    var radius = 
    parseInt(document.getElementById('txtRadius').value); //String to Integer

    if (0 < radius)
        print("The area of the circle is " + (radius * radius * Math.PI);
    else
        print("Error - radius must be a whole number greater than 0.");
    return false;
  }
</script>
</head>
<body>
</body>   
</html>

我不熟悉打印方法,所以我尝试将所有打印更改为警报,但这没有起到任何作用。谢谢你的帮助。链接到JSFIDLE:

您的代码有更多问题,但这将回答您的问题

没有发生任何事情的原因是,您缺少一个函数,并且使函数无效

更改此选项:打印圆的面积为+半径*半径*数学.PI

为此:打印圆的面积为+半径*半径*数学.PI


请参阅fiddle

您的代码有更多问题,但这将回答您的问题

没有发生任何事情的原因是,您缺少一个函数,并且使函数无效

更改此选项:打印圆的面积为+半径*半径*数学.PI

为此:打印圆的面积为+半径*半径*数学.PI



请参见fiddle,我不知道,但也许您会使用半径>0,否则,0总是小于半径,这很不幸没有起到任何作用。是的,不要使用“打印”-这会随意打印当前页面!尝试将函数命名为其他名称—例如PPRINT—您的代码只是有缺陷,需要在正确诊断之前进行清理。在不关闭括号的情况下调用方法两次,圆的周长为+半径*2*Math.PI;打印圆的面积为+半径*半径*数学.PI;,当您编写document.getElementByIdconsole.appendChildp时;控制台定义的确切位置是哪里?@user3546086看我的答案,我有一把小提琴给你。我不知道,但也许你会做半径>0,否则0总是小于半径,这没有做任何不幸的事。是的,不要使用“打印”-这会随意打印当前页面!尝试将函数命名为其他名称—例如PPRINT—您的代码只是有缺陷,需要在正确诊断之前进行清理。在不关闭括号的情况下调用方法两次,圆的周长为+半径*2*Math.PI;打印圆的面积为+半径*半径*数学.PI;,当您编写document.getElementByIdconsole.appendChildp时;控制台到底是在哪里定义的?@user3546086看我的答案,我有一把小提琴给你,谢谢。仍然没有显示面积和周长。哈哈!是的,你的代码有很多问题。我只是想让你回到正轨。如果你还有其他问题,请随时发布另一个问题,我们都会帮你解决。好的,是的,我只需要提醒来显示面积和周长。谢谢,就是这样。因此,您只是将两个警报/计算添加到同一个if语句中。非常感谢。这会帮你的,谢谢。仍然没有显示面积和周长。哈哈!是的,你的代码有很多问题。我只是想让你回到正轨。如果你还有其他问题,请随时发布另一个问题,我们都会帮你解决。好的,是的,我只需要提醒来显示面积和周长。谢谢,就是这样。因此,您只是将两个警报/计算添加到同一个if语句中。非常感谢。这会帮你的
function CalculateCircumference() {
    var radius =
    parseInt(document.getElementById('txtRadius').value);//String to Integer

    if (radius > 0)
        //calculate
    else
        //error
    return false;
  }