Polymer中async和job之间的区别是什么

时间:2014-11-01 07:10:19

标签: javascript polymer

js newbie here!

我已阅读the description of job,但仍然对使用this.async(function(){...}, 500)的区别感到困惑,首先清除this.toastTimeout1(我还没有写任何代码延迟到以前的一些任务,不熟悉这项技术)?当我正在阅读core-tooltip.html时,我找到了一段代码:

   labelChanged: function(oldVal, newVal) {
     this.job('positionJob', this.setPosition);
   },

为什么不直接拨打this.serPosition

1 个答案:

答案 0 :(得分:3)

async只是在一段时间过后执行任务。

job类似,但如果在时间段过去之前使用相同的作业名称再次调用job,则会重置计时器。

在上面的示例中,如果快速连续多次调用labelChangedjob会确保仅调用setPosition回调一次。

有时job所做的就是debouncing。嗯,也许我们应该把它叫做 debounce