我这里有两个通过Google搜索API生成的JSON对象。这些对象的URL可以在下面找到。
http://ajax.googleapis.com/ajax/services/search/web?v=1.0&q=hello%20world&rsz=large http://ajax.googleapis.com/ajax/services/search/web?v=1.0&q = hello%20world&rsz = large&start = 8
如您所见,第一个URL返回前八个结果,而第二个URL返回后八个结果。与其单独检查这些结果,我不希望以 编程方式 将它们合并到一个JSON对象中,并将其作为前16个结果传递。
我已经尝试了几个非常简单的JSON对象,但是Google返回的内容仍然有点过头,因此我希望在做这种事情时能有所帮助。
据我所知,将两个对象合并为一个对象并不违反Google的《服务条款》,只是这些对象始终作为两个结果(它们将会)通过。一些朋友向我指出了能够执行此类操作的自动化工具的方向,但是我还没有找到这样的工具。
我目前在ASP.NET中工作,因此C#或VB.NET代码很棒,但是我在某种程度上与语言无关,因此,非常感谢您使用任何语言提供的帮助。
任何人都可以在做这种事情上提供任何帮助和/或建议吗?
编辑: 这些结果最终将保存到数据库中,因此任何服务器端方法都将是很棒的,即使这意味着将它们直接放入表中以便以后处理也是如此。
function MergeJSON (o, ob) { for (var z in ob) { o[z] = ob[z]; } return o; }
这看起来很像Elliot的代码,但是在某些情况下更安全。当与Extjs或jQuery之类的框架一起使用时,它没有向对象添加函数,这可能会导致一些语法问题。我遇到的问题是,在事件侦听器中使用它时,语法上会出现问题。但是功劳归功于Elliot,他做到了。
使用此方法如下:
a = {a : 1} b = {b : 2} c = {c : 3} x = MergeJSON ( a, b); x = MergeJSON ( x, c); result : x == {a : 1, b : 2, c : 3}
谢谢你艾略特