我正在尋找減少JSON數據的存儲需求,通過將它與已知的一組默認值進行對比來減少它。基本上,我想要的是jQuery的.extend()
功能的逆,使得下列測試通過任意JSON兼容的對象:jQuery.extend的反轉(true,...)
function test_delta(defaults, delta) {
var current = $.extend(true, {}, defaults, delta);
QUnit.same(get_delta(current, defaults), delta);
}
在我開始寫我自己的get_delta()
,是任何人都知道一個現有的實現?
你將不得不自己處理這個問題,這是困難的(嵌套循環)方式。你可能知道。如果您的JSON數據具有任意深度,它會更有趣。 – 2010-08-04 22:11:39
是的,我已經提出了一些有趣的邊緣案例;這就是爲什麼我認爲我會在自己挖掘之前詢問「SO oracle」。呃,好吧。 :-) – 2010-08-04 22:23:07
開始的一個好地方是查看[jQuery源代碼](http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.js)中的jQuery.fn.extend函數。 – calvinf 2010-08-04 22:31:18