Webstatt.org - Community seit 2006 - 2012 (2024?)

Js array to string

Avatar user-271
30.07.2007 12:22

ich versuch grad vergeblich ein Js array zu einem String zu kriegen.....

es ist ein multidimensionales array, dass so aussieht:
[['Kontrast',['5','4']],['something',['4']]];


so solle s später auch imer string aussehen..hat da jemand eine idee?

im prinzip geht es darum, dass ich ein komplettes Array an php übergeben will und das geht nunmal nur in string form...eigentlich kann das teil aussehen wie es will...wegen mir auch xml -.- nur dachte ich, dass die ursprüngliche form am einfachsten ist

#!/bin/bash
traurig){ neutral:& };:
user-157
30.07.2007 15:40

Wenns aussehn darf wie es will *g*
var array = [['Kontrast',['5','4']],['something',['4']]];
document.write(String(array))


Kannst ja die Klammern selber basteln.

asdf!
Avatar user-271
30.07.2007 18:31

und das ganze nun bitte dynamisch????? hilft mir nichts, wenn ich das statisch hab

nujna...hab ne möglichkeit dank snake gefunden...gibtein paar nette serialize funktionen, die mti den funktioen in php übereinstimmen....das passt ganz schön zwinkern keinen user-314 mti umdenken dann

danke Fettes Grinsen

edit: fals es jemand wissen will Fettes Grinsen

die funktionen:
(benutzung sollte klar sein: serialize(array)zwinkern
das ganze ist kompatibel mit dem php serialize, ich verwende es um daten zu übergeben.....funktinoiert einwandfrei und man hat keinen user-314 es wieder durchzuparsene wie xml oder so Fettes Grinsen so regel ich die komplette datenübergabe zwishcen php und Js auf httprequest ebene
function unserialize(s) {
var mixed = __unserialize(s);
return (mixed[1].replace(/^\s+|\s+$/g,''zwinkern == ""zwinkern?mixed[0]:false;
}
function __unserialize(s) {
var type = s.charAt(0);
s = s.substring(1);
var mixed = null;
if (type == "i" || type == "d"zwinkern {
var semi = s.indexOf(";"zwinkern;
mixed = parseFloat(s.substring(1, semi));
s = s.substring(semi+1);
} else if (type == "b"zwinkern {
mixed = s.charAt(1)=="1";
s = s.substring(3);
} else if (type == "s"zwinkern {
var colon = s.indexOf(":", 1);
var len = parseInt(s.substring(1, colon));
mixed = s.substring(colon+2, colon+2+len);
s = s.substring(colon+4+len);
} else if (type == "N"zwinkern {
mixed = null;
s = s.substring(1);
} else if (type == "a"zwinkern {
var colon = s.indexOf(":", 1);
var len = parseInt(s.substring(1, colon));
s = s.substring(colon+2);
mixed = new Array();
for (var i = 0; i < len; i++) {
var key = __unserialize(s);
var val = __unserialize(key[1]);
s = val[1];
mixed[key[0]] = val[0];
}
s = s.substring(1);
}
return [mixed, s];
}
function serialize(mixed) {
var s = "";
var type = serialize_get_type(mixed);
if (type == "i" || type == "d"zwinkern {
s = type + ":" + mixed + ";";
} else if (type == "b"zwinkern {
s = type + ":" + (mixed?1:0) + ";";
} else if (type == "s"zwinkern {
s = type + ":" + mixed.length + ':"' + mixed + '";';
} else if (type == "N"zwinkern {
s = type + ";";
} else if (type == "a"zwinkern {
var n = "";
for (var key in mixed) {
if (!isNaN(key)) key = parseFloat(key);
n += serialize(key) + serialize(mixed[key]);
}
s = type + ":" + mixed.length + ":{" + n + "}";
}
return s;
}
function serialize_get_type(val) {
var type = typeof val;
var ret;
if (type == "number"zwinkern {
if (val % 1 == 0) {
ret = "i";
} else {
ret = "d";
}
} else if (type == "string"zwinkern {
ret = "s";
} else if (type == "object"zwinkern {
if (val == null) {
ret = "N";
} else if (val.constructor == Array) {
ret = "a";
} else {
ret = "N";
}
} else if (type == "boolean"zwinkern {
ret = "b";
} else {
ret = "N"; // we're not going to serialize this type, we'll send a null
}
return ret;
}

#!/bin/bash
traurig){ neutral:& };: