javascript 异步编程

之前一直被一个问题困扰。
“一个购物车列表接口,一个商品列表接口,其中得实现需要实现商品数量的显示。”
从逻辑上考虑就需要 购物车接口优先请求,在回调函数中去请求商品列表。 (这就从代码层上会发现,横向和纵向上都显得有点过长)。

我感觉我需要利用JS异步编程来解决诸多此类接口的在逻辑层上的优先调用。
我如今刚刚达成一点点成就。

发布/订阅

下面采用的是Ben Alman的Tiny Pub/Sub,这是jQuery的一个插件。

  • 源码
(function($) {

  var o = $({});

  $.subscribe = function() {
    o.on.apply(o, arguments);
  };

  $.unsubscribe = function() {
    o.off.apply(o, arguments);
  };

  $.publish = function() {
    o.trigger.apply(o, arguments);
  };

}(jQuery));
  • 案例
jQuery.subscribe("done", f2);

function f1(){
    setTimeout(function () {
      // f1的任务代码
      jQuery.publish("done");
    }, 1000);
  }

jQuery.unsubscribe("done", f2);

你可能感兴趣的:(javascript 异步编程)