JavaScript:对象问题

标签 javascript jquery

我正在编写一个小定时器。代码如下:

var counter = {
    seconds: 100,
    clock: function () {
        $('input').val(this.seconds);
        this.seconds -= 1;
        setTimeout(this.clock(), 1000);
    }
};

counter.clock();

http://jsfiddle.net/4ktEG/ 上有一个工作示例

不知何故,每次运行代码时我都会得到不同的答案。有什么问题吗?

最佳答案

这将实现您正在寻找的倒计时。

var counter = {
    seconds: 100,
    clock: function () {
        $('input').val(this.seconds);
        this.seconds -= 1;
        setTimeout(function(){counter.clock()}, 1000);
    }
};

counter.clock();

http://jsfiddle.net/4ktEG/13/

关于JavaScript:对象问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6890564/

相关文章:

javascript - Jquery Flot 不使用 Ajax 调用呈现

javascript - 根据自定义字段更新 Firebase 文档

javascript - 使用 setTimeout 和 jQuery 排序函数时出现问题

javascript - jQuery 单击事件不会在 AngularJS DOM 中触发

javascript - Jquery中提取域名的最佳方法

javascript - 为什么我的代码会多次触发

javascript - 寻找与 lodash 的 [_.set]() 相同的功能

javascript - 如何在 JavaScript 中将序列化数组值转换为 JSON

javascript - jQuery UI 可拖动捕捉标尺

javascript - $.when() 延迟数组