zoukankan      html  css  js  c++  java
  • Ajax同步发送、字符串按步长截断

    Ajax同步发送:

    (1)闭包的使用

    多个Ajax请求,同步发送(能同步发送几个?让浏览器自己去决定吧).同步发送,每个ajax请求单独处理自己的请求.

    for(var i=0;i<len;i++){

         Ajax.post(url,param,(function(param,i){

              return function(txt){

                      var res = txt.evalExp();//解析返回的json对象

                     //这里可以利用i处理每一个ajax请求

          }

        }(param,i))

        );

    }

     (2) 队列 

     ps:别人写的,找不到连接了,悲剧~

    function Buffer(handler) {

        var queue = [];

        function run() {

            var callback = function () {

                 if (queue.length > 0) {

                      run();

                 }

            }

            handler(queue.shift(), callback);

        }

        this.append = function(task) {

            queue.push(task);

            

            if (queue.length === 1) {

                run();

            }

            

        }

    }

    function Task(item, url, callback) {

        this.item = item;

        this.url = url;

        this.callback = callback

    }

    function taskHandler(task, callback) {

        Ajax.post(task.url,task.item,function(txt){

            if (task.callback) {

                       task.callback(txt);

             }

             callback(txt);

        });

    }

    var buffer = new Buffer(taskHandler);

    操作的时候:

    buffer.append(new Task(ajaxParams[i], ajaxURL[i],ajaxCallback[i]));//参数,url,callback

     

    字符串按步长截断

    其实直接用function就好,不要用prototype

    另:

    汉字特别不好处理,

    Step是1的时候,就全部分开

    Step是奇数的时候(3,5…),就按不够step的分开,比如上面的例子就分成了

  • 相关阅读:
    gitlab安装笔记二_Centos7配置163yum源
    gitlab安装笔记一_虚拟机中安装Centos7
    初篇:我与Linux
    Redis分布式锁正确的实现方法
    MacOS从零开始搭建hexo博客
    docker服务编排--docker-compose
    多线程问题整理
    maven依赖范围
    linux打开文件数 too many open files 解决办法
    【数据结构】队列-数组模拟队列
  • 原文地址:https://www.cnblogs.com/lilyimage/p/2670640.html
Copyright © 2011-2022 走看看