使用原型计算 JavaScript 的圆柱体体积

Calculate the volume of cylinder with JavaScript using prototype

我是 javascript 菜鸟和初学者,所以不要对我太苛刻。

我需要使用构造函数和原型来计算圆柱体的体积。

我有一个包含两个输入的表单,我将从中获取值来进行计算。我必须在单击按钮时创建一个新实例,并且必须在结果输入中输出计算结果。

我似乎被困在从输入中获取值的部分,因为我的控制台总是在我单击按钮时显示 'hoogte' 和 'diameter' 未定义。

我已经看了将近 24 小时了,但我没有任何进展..

这是我的代码:

<form action="">
    <label>
        Diameter: <input type="text" id="diameter"><br><br>
        Hoogte: <input type="text" id="hoogte"> <br><br>
        <input type="button" value="bereken" id="berekenBtn"><br><br>
        <input type="text" id="uitkomst">
    </label>
</form>

-

<script>
    window.addEventListener("DOMContentLoaded", function () {
        document.getElementById("berekenBtn").addEventListener("click", bereken);
    });

    function Cylinder(hoogte, diameter) {
        this.hoogte = hoogte;
        this.diameter = diameter;
    }

    Cylinder.prototype.volume = function () {
        var radius = document.getElementById('diameter') = this.diameter / 2;
        var hoogte = document.getElementById('hoogte') = this.hoogte;

        var berekening = Math.PI * radius * radius * hoogte;
        //berekening.toFixed(4);
    }


    function bereken() {
        var myCylinder = new Cylinder(
            document.getElementById("uitkomst").value = Cylinder()
        )
        console.log(myCylinder);
    }
</script>
 <form action="">
        <label>
            Diameter: <input type="number" id="diameter"><br><br>
            Hoogte: <input type="number" id="hoogte"> <br><br>
            <input type="button" value="bereken" id="berekenBtn"><br><br>
            <input type="text" id="uitkomst">
        </label>
    </form>


<script>
         window.addEventListener("DOMContentLoaded", function () {
        document.getElementById("berekenBtn").addEventListener("click", bereken);
    });

    function Cylinder(hoogte, diameter) {
        this.hoogte = hoogte;
        this.diameter = diameter;
    }

    Cylinder.prototype.volume = function () {
        var radius =  this.diameter / 2;
        var hoogte = this.hoogte;

        var berekening = Math.PI * radius * radius * hoogte;
        return berekening;
    }


    function bereken() {
        var diameter = document.getElementById("diameter").value;
        var hoogte = document.getElementById("hoogte").value;
        var myCylinder = new Cylinder(diameter, hoogte);
        var result = myCylinder.volume();
        document.getElementById("uitkomst").value = result;
    }

    </script>

我修改了一些代码,试着理解一下,希望对你有帮助!