我如何完成这个程序?(javascript)

我如何完成这个程序?(javascript),javascript,jquery,json,crossrider,Javascript,Jquery,Json,Crossrider,下面的代码属于我目前正在尝试开发的crossrider扩展,希望能够跨浏览器同步书签。此文件当前为background.js文件。它将首先从本地数据库检索书签文件的快照,然后将其与当前书签列表进行比较,如果书签列表中存在任何差异,无论是添加还是删除,都将使用getChanges函数返回,然后发送到服务器,最后,脚本更新快照并等待30秒,然后重新启动进程。我真的不知道如何使用getChanges函数。它需要返回一个json对象,指示标题和URL的增减。如果有人能为这个函数编写代码那就太好了。谢谢

下面的代码属于我目前正在尝试开发的crossrider扩展,希望能够跨浏览器同步书签。此文件当前为background.js文件。它将首先从本地数据库检索书签文件的快照,然后将其与当前书签列表进行比较,如果书签列表中存在任何差异,无论是添加还是删除,都将使用getChanges函数返回,然后发送到服务器,最后,脚本更新快照并等待30秒,然后重新启动进程。我真的不知道如何使用getChanges函数。它需要返回一个json对象,指示标题和URL的增减。如果有人能为这个函数编写代码那就太好了。谢谢

appAPI.ready(function() {
// Poll every 30 seconds
setInterval(function() {
  appAPI.db.async.get('prevBookmarks', function(value) {
  // Load or initialize previous bookmarks list
  var prevBookmarks = (value) ? value : {};

  // Get current bookmarks
  appAPI.bookmarks.getTree(function(nodes) {
    // Save bookmark list for next comparison
    appAPI.db.async.set('prevBookmarks', nodes);

    // In your getChanges functions, traverse the bookmark trees collating
    // changes and then post then to your API server using appAPI.request
    var changes = getChanges(prevBookmarks, nodes);
    appAPI.request.post({
      url: http://yourAPIserver.com,
      postData: changes,
      contentType: 'application/json'
    });
  });
});
}, 30 * 1000);
});

好的,您已经将jQuery作为标记之一,因此请尝试以下链接:

它返回两个数组之间的差异。你必须为你正在做的事情执行两次,一次是为了弄清楚什么是当前的,什么不是先前的,反之亦然。我不知道您的书签中包含哪些属性,因此这个简单的示例可能并不完全适合您的需要,但它可能会为您指明正确的方向


祝你好运,欢迎使用JavaScript

对不起,朋友,这不是StackOverflow的目的。您是代码的作者,而不是社区。你至少要自己尝试,发布你尝试过的东西,并提供代码片段。对一个不存在的函数使用一行代码是不够的。尝试一下,发布getChanges函数,然后寻求帮助。这里有很多人愿意这样做。为了记录在案,我没有否决你的问题。问题是我对编码是新手,对javascript更是新手,我真的不知道从哪里开始使用这个函数非常感谢,这很酷