小编use*_*544的帖子

快速进行多个AJAX调用

所以我有一个Web应用程序,它正在对一些API进行大约14-15次AJAX调用.问题是当我在浏览器中键入其URL时,所有AJAX调用所花费的时间几乎是每个API向我显示响应的时间的3倍.

我正在DOM Ready事件中立即进行所有AJAX调用.

问题是如何加快这个将15个AJAX调用放在一起的过程,尽可能快地获得响应并相应地操作DOM.

我脑子里想的几点:

  1. 所有AJAX调用本质上都应该是ASYNC.(已经这样做了).
  2. 不要同时进行所有AJAX调用.引发某种超时,因为同时进行所有AJAX调用可能会阻塞带宽并减慢进程的周转时间.
  3. 通过任何方式减少API调用的数量.(已经这样做了).
  4. 尽可能少地操纵DOM.(已经这样做了).
  5. 设置cache:true在AJAX设置.我不认为这会有所帮助,我仍然在做任何我确信内容更新真的很慢的地方.

任何建议都很有价值!谢谢.

我正在进行AJAX调用的方式

$(document).ready(function(){

    loadSentimentModule();
    loadCountModule();
    loadEntitiesModule();  
    // Some more function calls.

});

function loadSentimentModule(){

   $.ajax({
          url:someurl,
          cache:true,
          dataType:"json",
          success: function(data){

              // Based on data manipulating DOM.
          }

}

// Same kind of function defintions for all the functions.
Run Code Online (Sandbox Code Playgroud)

javascript ajax jquery

11
推荐指数
1
解决办法
4286
查看次数

使用复合键进行查询,而不是Cassandra中的Row Key

我想通过CQL3中除Row Key之外的复合键来查询数据过滤.这些是我的疑问:

CREATE TABLE grades (id int,
  date timestamp,
  subject text,
  status text,
  PRIMARY KEY (id, subject, status, date)
);
Run Code Online (Sandbox Code Playgroud)

当我尝试访问数据时

SELECT * FROM grades where id = 1098; //works fine
SELECT * FROM grades where subject = 'English' ALLOW FILTERING; //works fine
SELECT * FROM grades where status = 'Active' ALLOW FILTERING; //gives an error
Run Code Online (Sandbox Code Playgroud)

错误请求:PRIMARY KEY部分状态不受限制(前一部分主题不受限制或非EQ关系)

只是为了试验,我把关键字保持为"我的主要行密钥".我总是只能使用主行键或第二个键进行查询,考虑到上面的例子,如果我在主键列表中交换主题和状态,我可以查询状态,但如果我尝试通过,我会得到类似的错误主题或时间.

难道我做错了什么?我可以不使用CQL3中的任何其他复合键查询数据吗?我正在使用Cassandra 1.2.6和CQL3.

composite-key cassandra cql3

7
推荐指数
1
解决办法
1万
查看次数

PostgreSQL - 从列表中查找表中不存在的ID

我有一个很大的 ID 列表,需要对照表进行检查以查找哪些 ID 不在表中。

我总是查询以选择表中但不在列表中的内容,例如:

SELECT user_id FROM user_base WHERE user_id NOT IN ('22','33','88','99');

我该如何做相反的事情?就像是:

SELECT user_id FROM ('22','33','88','99') WHERE user_id NOT IN user_base;

sql postgresql

5
推荐指数
1
解决办法
2153
查看次数

从 JSON 创建 jQuery 数组

我想使用 JSON 对象中返回的值在 jQuery 中创建一个关联数组。JSON 对象是动态创建的:

[{"name":"key1","value":"value1"},{"name":"key2","value":"value2"},{"name":"key3","value":"value3"},{"name":"key4","value":"value4"}]
Run Code Online (Sandbox Code Playgroud)

我想使用 JSON 返回的值创建此格式的关联数组:

aResult = {key1 : 'value1', key2 : 'value2', key3 : 'value3', key4 : 'value4'};
Run Code Online (Sandbox Code Playgroud)

目前,当我迭代 JSON 对象时,我可以在控制台中看到所需的数组结构

$.each(jData, function(k, v) {
    if (v.name.toLowerCase().indexOf("answer") >= 0) {
        name = v.name;
        value = v.value;
        console.log(name + ' : ' + value); //returns the structure I wish
    };

});
Run Code Online (Sandbox Code Playgroud)

但是当我在循环中添加这段代码来创建数组时

var aResult = {name:value}
Run Code Online (Sandbox Code Playgroud)

它返回[object Object]

我缺少什么?我该如何前进?任何帮助表示赞赏。

javascript arrays jquery associative-array

2
推荐指数
1
解决办法
8050
查看次数

MYSQL同一个表有不同的日期格式

我有一个表,其中填充了来自外部源的数据.问题是我为同一列提供了两种不同格式的日期,格式中有一些记录,'%Y-%m-%d %H:%i'格式中有其他'%Y-%d-%m %H:%i%s'格式,它们都是VARCHAR类型.

我知道如何将字符串类型的日期字段转换为日期/日期时间字段,但如何处理日期的差异?是否可以根据其各自的格式更新日期,以便我可以应用WHERE更新的条件仅WHERE date_field发生'%Y-%m-%d %H:%i'格式化,然后另一个查询以'%Y-%d-%m %H:%i%s'格式更新日期字段?

现在,当我尝试使用常见查询更新表时,我得到的字段不符合格式:

UPDATE my_table 
SET my_date_field = STR_TO_DATE(my_date_field,'%Y-%m-%d %H:%i:%s');
Run Code Online (Sandbox Code Playgroud)

响应:错误代码:1411.日期时间值不正确:'10 -22-12 15:00'表示函数str_to_date

UPDATE my_table 
SET my_date_field = STR_TO_DATE(my_date_field,'%Y-%d-%m %H:%i');
Run Code Online (Sandbox Code Playgroud)

响应:错误代码:1292.截断的日期时间值不正确:'2010-01-01 00:00:00'

mysql datetime

1
推荐指数
1
解决办法
1195
查看次数

JS如何在forEach循环中从数组中删除对象?

我有一个data包含以下内容的对象:

{
  "content": {
    "id": "someID",
    "type": "unit",
    "method": "xyz",
    "blocks": [{
      "key": "blue",
      "data": [
        "Array"
      ]
    }, {
      "key": "red",
      "data": [
        "Array"
      ]
    }, {
      "key": "yellow",
      "data": [
        "Array"
      ]
    }, {
      "key": "black",
      "data": [
        "Array"
      ]
    }],
    "notes": "abc"
  }
}
Run Code Online (Sandbox Code Playgroud)

我想删除block那个有密钥yellow,通过循环blocks,其余的数据应保持原样.所以预期的最终结果是

{
  "content": {
    "id": "someID",
    "type": "unit",
    "method": "xyz",
    "blocks": [{
      "key": "blue",
      "data": [
        "Array"
      ]
    }, {
      "key": "red",
      "data": [
        "Array" …
Run Code Online (Sandbox Code Playgroud)

javascript arrays object ecmascript-6

1
推荐指数
1
解决办法
68
查看次数