Att använda associativa arrayer

JavaScript:
Att använda associativa arrayer

Hur man gör:

Att skapa och använda associativa arrayer (objekt) i JavaScript är enkelt. Du definierar ett objekt med klammerparanteser {}, och inuti dessa kan du definiera ett set av nyckel-värdepar. Nycklar är alltid strängar, och värdena kan vara vad som helst: strängar, nummer, arrayer, till och med andra objekt.

// Skapar en associativ array
let userInfo = {
  name: "Alex",
  age: 30,
  email: "[email protected]"
};

// Komma åt element
console.log(userInfo.name); // Utdata: Alex
console.log(userInfo["email"]); // Utdata: [email protected]

// Lägga till nya element
userInfo.job = "Utvecklare";
userInfo["land"] = "Kanada";

console.log(userInfo);
/* Utdata:
{
  name: "Alex",
  age: 30,
  email: "[email protected]",
  job: "Utvecklare",
  land: "Kanada"
}
*/

// Ta bort ett element
delete userInfo.age;
console.log(userInfo);
/* Utdata:
{
  name: "Alex",
  email: "[email protected]",
  job: "Utvecklare",
  land: "Kanada"
}
*/

Som du kan se är att komma åt, lägga till eller ta bort element i en associativ array ganska direkt och intuitivt.

Fördjupning

I JavaScript-världen, även om vi ofta hör termen “associativ array,” är det tekniskt sett en missbenämning eftersom JavaScript inte har sanna associativa arrayer som andra språk (t.ex. PHP). Vad JavaScript har är objekt som tjänar ett liknande syfte men är en mer kraftfull och flexibel konstruktion.

Historiskt sett var arrayer i programmeringsspråk designade för att hålla en samling av objekt, åtkomliga genom deras numeriska index. Dock, när programvaruutvecklingen utvecklades, uppstod behovet av mer flexibla datastrukturer. Associativa arrayer, eller ordböcker i andra språk, var ett svar, vilket möjliggjorde åtkomst till element genom godtyckliga nycklar.

JavaScripts tillvägagångssätt med objekt som nyckel-värdeförråd erbjuder en blandning av funktionalitet. Det tillåter egenskaper (nycklar) att läggas till, tas bort och sökas upp efter namn. JSON (JavaScript Object Notation) är ett bevis på nyttoeffekten av denna struktur och har blivit standarden för datadelning på webben.

Även om objekt täcker de flesta behoven för associativa arrayer, i fall där nyckelordning eller iteration är viktigt, erbjuder Map-objektet som introducerades i ES6 ett bättre alternativ. En Map behåller nyckelordningen, accepterar en bredare uppsättning datatyper som nycklar, och inkluderar hjälpsamma metoder för iteration och storleksåterhämtning. Trots dessa fördelar förblir den traditionella objektsyntaxen populär för dess enkelhet och lätthet att använda i många vanliga scenarier.