Itérer Imbriqués les Objets JavaScript

Je suis en train de parcourir un objet imbriqué pour récupérer un objet spécifique identifié par une chaîne de caractères. Dans l'échantillon de l'objet ci-dessous, la chaîne de l'identificateur est le "label" de la propriété. Je ne peut pas envelopper la tête autour de comment itérer à travers l'arbre de retourner l'objet approprié. Toute aide ou suggestion serait grandement apprécié.

var cars = {
  label: 'Autos',
  subs: [
    {
      label: 'SUVs',
      subs: []
    },
    {
      label: 'Trucks',
      subs: [
        {
          label: '2 Wheel Drive',
          subs: []
        },
        {
          label: '4 Wheel Drive',
          subs: [
            {
              label: 'Ford',
              subs: []
            },
            {
              label: 'Chevrolet',
              subs: []
            }
          ]
        }
      ]
    },
    {
      label: 'Sedan',
      subs: []
    }
  ]
}
InformationsquelleAutor NewToThis | 2011-11-10