javascript - 即使在setter设置javascript之后也能获取以前的值

标签 javascript

我只是在Java脚本中尝试getter和setter方法 我写了下面的代码

<script type="text/javascript">
        var Circle = function(radius) {
            this._radius = radius;
        }

        Circle.prototype = {
            set radious(radius) {
                this._radius = radius;
            },
            get radious() {
                return this._radius;
            },
            get area() {
                return (3.14 * (this._radius * this._radius));
            }
        };

        var circ = new Circle(10);

        circ.radius = 15;

        document.write("A circle with radius " + circ.radius + " Have an area of " + circ.area);
    </script>

所以我在浏览器中得到了这个输出

A circle with radius 15 Have an area of 314

此处圆的半径已更新,但在 area() 中它使用旧值。 我的程序出了什么问题?

最佳答案

您在 setter 中漏掉了 radius 的拼写。您输入了radious。除此之外,您的代码看起来不错。

关于javascript - 即使在setter设置javascript之后也能获取以前的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42337366/

相关文章:

javascript - JQuery - 选择器仅获取剑道选项卡条中第一个网格的值

javascript - 计算 HTML 段落中的字数

javascript - 根据表格列中的复选框列表对 html 表格进行排序

javascript - angularJS 模板 url 不会自动加载

javascript - 错误: cannot call methods on tabs prior to initialization; attempted to call method 'destroy'

javascript - 重用 HTML 代码块

Javascript - 单击 svg 形状时调用函数。

php - 根据时区调整发布时间

javascript - 从 Java 客户端服务器应用程序打开本地 Internet Explorer

javascript - 如何动态更新拉斐尔文本