Moniulotteiset objektit JavaScriptissä

Moniulotteisia eivät ole vain taulukot, vaan myös objektit, tässä esimerkki:

javascriptlet obj = {
  a: {
    key1: 'a1',
    key2: 'a2',
    key3: 'a3',
  },
  b: {
    key1: 'b1',
    key2: 'b2',
    key3: 'b3',
  },
  c: {
    key1: 'c1',
    key2: 'c2',
    key3: 'c3',
  },
}

Esitetään joitain elementtejä meidän objektistamme:

javascriptconsole.log(obj['a']['key1']); // tulostaa 'a1'

Elementteihin voi viitata myös ominaisuuksina:

javascriptconsole.log(obj.a.key1); // tulostaa 'a1'

Molempia tapoja voi yhdistellä:

javascriptconsole.log(obj['a'].key1); // tulostaa 'a1'
console.log(obj.a['key1']); // tulostaa 'a1'
Задание 1

Annettu seuraava objekti:

javascriptlet obj = {
  key1: {
    key1: 1,
    key2: 2,
    key3: 3,
  },
  key2: {
    key1: 4,
    key2: 5,
    key3: 6,
  },
  key3: {
    key1: 7,
    key2: 8,
    key3: 9,
  },
}

Etsi annetun objektin elementtien summa.

Задание 2

Annettu seuraava objekti:

javascriptlet obj = {
  1: {
    1: 'a1',
    2: 'a2',
    3: 'a3',
  },
  2: {
    1: 'b1',
    2: 'b2',
    3: 'b3',
  },
  3: {
    1: 'c1',
    2: 'c2',
    3: 'c3',
  },
}

Tulosta näytölle elementti 'b2' ja elementti 'c1'.

Задание 3

Annettu seuraava objekti:

javascriptlet obj = {
  key1: {
    a: 1, b: 2, c: {
      d: 3,
      e: 4,
    }, f: 5,
  },
  key2: {
    g: 6, h: 7,
  },
}

Etsi manuaalisesti, ilman silmukkaa, kaikkien numerosta koostuvien elementtien summa.