如果我有一個javascript對象/ assoc。 array這樣定義:如何合併2個JavaScript對象,如果它們不存在於另一箇中,則將其中的屬性填充到一個對象中?
function somefunction(options) {
var defaults = {
prop1: 'foo',
prop2: 'bar'
};
//Do stuff here
}
我想用這個作爲函數的默認值。所以當函數被調用時,我想用defaults
中的值填充options
變量,但前提是它們不存在於options
中。
因此,可以說,這種被稱爲
somefunction({ prop1: 'fish' });
我怎樣才能讓這個options
獲取與defaults
這樣,我得到合併這
{
prop1: 'fish',
prop2: 'bar'
}
似乎是一個可怕的很多工作來執行一些深拷貝魔術 - 是否有必要? – TML 2009-05-22 01:52:25
這是一個很好的問題,深拷貝的東西可能是矯枉過正的。 – cgp 2009-05-22 02:03:16