Czy istnieje właściwy sposób na $ .extend zagnieżdżonych właściwości w jQuery?

Co mam i czego potrzebuję. To łatwe.

Opcje domyślne (istnieją zagnieżdżone właściwości):

{
  sDom: 'frt<"tfoot"lp>',
  bInfo: false,
  sPaginationType: "full_numbers",
  oLanguage: {
    sSearch: "",
    sLengthMenu: "Show _MENU_",
    oPaginate: {
      sFirst:     "|<<",
      sLast:      ">>|",
      sNext:      ">>",
      sPrevious:  "<<"
    }
  }
}

Rzeczywiste opcje:

{
  oLanguage: {
    oPaginate: {
      sNext:      "MODIFIED"
    }
  }
}

Wynik $ .extend:

{
  sDom: 'frt<"tfoot"lp>',
  bInfo: false,
  sPaginationType: "full_numbers",
  oLanguage: {
    oPaginate: {
      sNext:      "MODIFIED"
    }
  }
}

Potrzebuję właściwie rozszerzyć opcje domyślne o rzeczywiste opcje i uzyskać następujący wynik (jedna właściwość została zmodyfikowana):

{
  sDom: 'frt<"tfoot"lp>',
  bInfo: false,
  sPaginationType: "full_numbers",
  oLanguage: {
    sSearch: "",
    sLengthMenu: "Show _MENU_",
    oPaginate: {
      sFirst:     "|<<",
      sLast:      ">>|",
      sNext:      "MODIFIED"
      sPrevious:  "<<"
    }
  }
}

Problem polega na tym, że funkcja $ .extend ignoruje zagnieżdżone właściwości i obsługuje tylko właściwości pierwszego poziomu. Teraz mam ręcznie $ .extend każdej z zagnieżdżonych właściwości, ale myślę, że to nie jest rozwiązanie.

questionAnswers(1)

yourAnswerToTheQuestion