设为首页 - 加入收藏 ASP站长网(Aspzz.Cn)- 科技、建站、经验、云计算、5G、大数据,站长网!
热搜: 数据 创业者 手机
当前位置: 首页 > 运营中心 > 网站设计 > 正文

Web SQL数据库Javascript循环

发布时间:2021-02-23 01:06 所属栏目:12 来源:网络整理
导读:我想弄清楚这个,但似乎不能靠我自己…… 我正在玩Web SQL数据库,我无法使用循环来正常工作. 我用: for (var i=0; i=numberofArticles-1; i++){ db.transaction(function (tx) { tx.executeSql('INSERT INTO LOGS (articleID) VALUES (?)',[i]); }); }; 而且

我想弄清楚这个,但似乎不能靠我自己……
我正在玩Web SQL数据库,我无法使用循环来正常工作.
我用:

for (var i=0; i<=numberofArticles-1; i++){  
    db.transaction(function (tx) {  
    tx.executeSql('INSERT INTO LOGS (articleID) VALUES (?)',[i]);
  });
 };

而且我只得到了5个……我没有得到增量i值.
任何人都可以建议我做错了什么以及我应该考虑什么?

解决方法

它看起来像是异步的,并且在tx.executeSql触发时,循环已完成循环并且我已经多次更改.

你可以用一个闭包解决这个问题.

for (var i=0; i<=numberofArticles-1; i++){ 
    function (value) { 
        db.transaction(function (tx) {  
        tx.executeSql('INSERT INTO LOGS (articleID) VALUES (?)',[value]);
      });
    }(i); // <-- CALL the function
 };

(编辑:ASP站长网)

    网友评论
    推荐文章
      热点阅读