Google Apps Script:
Bruke assosiative tabeller

Slik gjør du:

I Google Apps Script oppretter og manipulerer du assosiative tabeller (objekter) ved hjelp av krøllparenteser {}, og definerer nøkkel-verdi-par innenfor. Nøkler er unike identifikatorer, og verdier kan være alt fra strenger og tall til mer komplekse objekter eller funksjoner. Her er et grunnleggende eksempel:

function createAssociativeArray() {
  var bruker = {
    navn: "Ola Nordmann",
    alder: 30,
    epost: "[email protected]"
  };

  // Tilgang til verdier
  Logger.log(bruker.navn); // Utdata: Ola Nordmann
  Logger.log(bruker["epost"]); // Utdata: [email protected]

  // Legge til nye nøkkel-verdi-par
  bruker.tittel = "Programvareutvikler";
  bruker["land"] = "Norge";

  Logger.log(bruker.tittel); // Utdata: Programvareutvikler

  // Iterere over nøkkel-verdi-par
  for (var nøkkel in bruker) {
    Logger.log(nøkkel + ': ' + bruker[nøkkel]);
  }
}

Eksempelutdata for iterasjonsdelen kan se slik ut:

navn: Ola Nordmann
alder: 30
epost: [email protected]
tittel: Programvareutvikler
land: Norge

Legg merke til hvordan du kan bruke både punktnotasjon og hakkeparentesnotasjon for å få tilgang til og sette egenskaper. Hakkeparentesnotasjon er spesielt nyttig når man jobber med nøkler som er dynamisk bestemt eller inkluderer tegn som ikke er tillatt i identifikatorer.

Dypdykk

Assosiativ tabeller i form av objekter har vært en hjørnestein i JavaScript, og ved utvidelse Google Apps Script, som reflekterer dets prototypebaserte arvemekanisme. I motsetning til språk med tradisjonelle assosiative tabeller eller ordbøker (f.eks., Pythons dict), tilbyr Google Apps Script-objekter et fleksibelt og kraftig middel for å strukturere data, med fordel av JavaScripts dynamiske natur.

Det er imidlertid viktig å merke seg at ECMAScript 2015-spesifikasjonen introduserte Map og Set objekter, som tilbyr en mer grei håndtering av assosiativ samling med visse fordeler over objekter, som å vedlikeholde innsettingsrekkefølge og bedre ytelse for store datasett. Selv om Google Apps Script også støtter disse, avhenger valget mellom å bruke objekter eller de nyere Map/Set-strukturene av spesifikke behov og ytelseshensyn. For de fleste oppgaver med assosiative tabeller, gir tradisjonell objektbasert implementering en kjent og allsidig tilnærming, men det er tilrådelig å undersøke nyere alternativer ettersom kompleksiteten i skriptet ditt øker.