2010-12-13 8 views
0

Ich habe ein Problem. Ich habe eine Funktion (Es gibt keine Informationen zurück) und Array. Ich muss Information in Array innerhalb der Funktion schreiben, die innerhalb einer anderen Funktion ist.Wie schreibe ich Informationen in Array innerhalb der Funktion? (Javascript)

Es ist wie dieses Beispiel aussehen sollte, aber in javascript:

#include <stdio.h> 

void setDefault(int * array); 
void setDefault2(int * array2); 


int main(void) 
{ 
    int a[]={0,1,2}; 
    setDefault(a); 
    printf("%d\n",a[0]); 
    return 0; 
} 

void setDefault(int * array) 
{ 
    setDefault2(array); 
} 

void setDefault2(int * array2) 
{ 
    array2[0]=-1; 
} 

PS. Vielen Dank für die Hilfe

+0

Was Sie bisher versucht haben? Hinweis: Arrays werden bereits als Referenz in JavaScript übergeben, vergessen Sie also einfach die Zeiger im C-Code und es sollte einfach sein, sie in JavaScript zu konvertieren. – casablanca

Antwort

1

Ich denke, so etwas wie dies sollte den Trick tun:

var myArray = [0, 1, 2]; 

function setDefault(ar) { 
    setDefault2(ar); 
} 

function setDefault2(ar) { 
    // do the thingy you want here 
    ar[0]--; 
} 

// test 
setDefault(myArray); 
// myArray should contain [-1, 1, 2] now 
+0

Das ist eine gefährliche Verwendung von 'für ... in' da drüben. Und übrigens wollte das OP nur 'array [0] = -1'. – casablanca

+0

Ja. Ich habe das gerade geändert. :) –

+0

Danke, aber es hat nicht geholfen = ( – Rusfearuth

Verwandte Themen