Hallo,
var arr = new Array();
arr["a"] = 1;
arr["b"] = 2;
Das ist kein wirklicher Array, sondern ein bloßes Object. Du solltest dann auch ein Object verwenden, weil du dem Arrayobjekt hier Objekteigenschaften, aber keine Array-Einträge hinzufügst.
var obj = {}; // Kurzschreibweise für new Object()
obj.a = 1;
obj.b = 2;
var str = ????(arr);
str soll enthalten: '{"a":1,"b":2}'
Wie heisst die Funktion '????' ?
Diese Funktion gibt es nicht, die muss man sich schreiben. Das Format heißt JSON und unter dem Begriff findest du auch entsprechende Funktionen.
http://www.json.org/json2.js, darin die Funktion JSON.stringify()
Mathias