Lær, hvornår du skal bruge punkt- og parentesnotation i JavaScript.

Javascript Jeep🚙💨

Follow

27. nov, 2019 – 3 min læsning

Dot vs Bracket notation i JavaScript

Vi kan få adgang til et objekts egenskab ved hjælp af

  • Dot notation
  • Bracket notation

Dette er den mest populære og mest anvendte måde at få adgang til et objekts egenskab på. Dette gør koden mere læsevenlig. Punktnotation bruges oftest.

Syntaks: obj.property_name

var user = {name : "Mark"};user.name ; // "Mark"

Hvornår skal man ikke bruge dot notation

Og vi har et egenskabsnavn som 123

var obj = {
'123' : 123
};

I ovenstående tilfælde, hvis vi ikke kan få adgang ved hjælp af

obj.123; 

Så, hvis egenskabsnavnet ikke er et gyldigt identifier , kan vi ikke få adgang til dets værdi ved hjælp af . notation.

Hvad er en identifikator?

En identifikator er en sekvens af tegn i koden, der identificerer en variable, function eller property. Generelt navn på funktion eller variabel eller egenskabsnavn på Object

Hvad er en gyldig Identifier?

I dette tilfælde kan vi bruge parentesnotation

var obj = {
'123' : 123
};obj; // 123

Note

I JavaScript er $ , og _ gyldige Identifikatorer. så vi kan få adgang til disse egenskaber ved hjælp af .-notationen.

var obj = {
$ : 10,
_ : 20
}obj.$; // 10obj._; // 20

Klammernotation

Klammernotationen bruges, når egenskabsnavnet er en ugyldig identifikator(starter med et tal, indeholder symboler).

var obj = {
test-123 : "test"
}// in this case we cannot use dot notationobj; // "test"

Hvis egenskabsnavnet er number, behøver vi ikke at pakke egenskabsnavnet ind i single /double quotes ved objektoprettelse. Men i parentesnotationen, hvis egenskabsnavnet er whole number , behøver vi ikke at omvikle navnet inden for single /double quotes . Men hvis egenskabsnavnet er double , er det nødvendigt at ombryde egenskabsnavnet inden for single /double quotes .

Eksempel 1: helt tal

var obj = {
123456 : 10
}obj;

Eksempel 2: Dobbelt

var obj = {
123.456 : 10
}obj; // undefinedobj; // 10

Exempel 3: Brug af et ugyldigt tal

var obj = {
123.123.123 : 10 // throws invalid number error
}For this case use single/double quotesvar obj = {
'123.123.123' : 10
}

Exempel 4: Brug af specielle symboler

var obj = {
'123-test' : "test"
}obj; // error(test is not defined)obj; // "test"

Anvendelse af variabel som egenskabsnavn

Exempel 1:

var test = "test";var obj = {
test : "Test success"
}obj // "Test success"

Exempel 2 :

var obj = {
name : "Mark"
age : 20
}var name = "age";obj; // Mark
obj; // 20

Exempel 3: Eksempel fra den virkelige verden på brug af parentesnotation

Vi kan også bruge object som egenskabsnavn, men det vil blive konverteret til

var a = {};var b = {};var c = {};c = 10;c ; {: 10}c = 20; // this will replace old c; {: 20}

Vi kan også have empty string som egenskabsnavn

var obj= {};var emptyString = "";obj = "10";obj; // 10

Skriv et svar

Din e-mailadresse vil ikke blive publiceret.