Avatar billede heyn Nybegynder
27. august 2010 - 14:07 Der er 6 kommentarer og
1 løsning

Er det muligt at anvende pointere i javascript

Hej Eksperter

Kort og godt -

Er det muligt at oprette pointere i javascript således at hvis jeg ændrer værdien på pointeren så ændrer jeg samtidig værdien af den variabel som pointeren peger på.
Hvis ja - Hvordan?

Mvh Christian
Avatar billede erikjacobsen Ekspert
27. august 2010 - 15:07 #1
Objekter tilgås altid med referencer:

function class1(v) {
this.value=v;
}

var a=new class1(8);
var b=a;

a.value++;

alert(b.value);
Avatar billede heyn Nybegynder
27. august 2010 - 15:24 #2
Jeg har et array a[];
Jeg ønsker i princippet at kunne:

a[5] = 3;
b[11][29] = a[5];

Men på en sådan vis at b er en pointer således at:

b[11][29] = 4;

medfører at a[5] bliver lig 4.

Mvh Christian
Avatar billede erikjacobsen Ekspert
27. august 2010 - 16:24 #3
Hvis der ikke behøver stå tallet 3, men du kan have et objekt med et tal i, så kan du (utestet):

function class1(v) {
this.value=v;
}

a[5] = new class1(3);
b[11][29] = a[5];

Men på en sådan vis at b er en pointer således at:

b[11][29].value = 4;
Avatar billede heyn Nybegynder
27. august 2010 - 18:14 #4
Så dette er altså en 'snydemåde' at arbejde med klasser i JavaScript?
Avatar billede heyn Nybegynder
27. august 2010 - 19:10 #5
Ok - Mange tak
Det blev:

function class1(v) {
    this.value=v;
}
var a = new Array();
var b = new Array();
b[3] = new Array();

a[5] = new class1(3);

b[3][7] = a[5];

Smid et SVAR.

Ps: Er man nødt til først at definere hver enkelt post i b som et array for at gøre b til et mutibel array, eller findes der en hurtig måde?
Altså en måde at undgå b[3] = new Array();
Avatar billede erikjacobsen Ekspert
27. august 2010 - 21:20 #6
Jeg samler slet ikke på point, tak. Svar selv, accepter eget svar. Eller vent og se om der er nogen, der ved mere end mig...

Du er nødt til at sige "new" til hver indgang - men det kan du evt gøre i en for-loop.
Avatar billede heyn Nybegynder
27. august 2010 - 21:43 #7
Ok - Tak for hjælpen
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester