Ich habe einen string:Converting JSON String-Objekt mit selektiver Auswertung
"{0:16970861903381446063,length:1}"
ich versuchte, es auf ein Objekt mit Hilfe der eval
Umwandlungsverfahren, aber es wertet auch die Zeichenfolge und damit rundet den Zahlenwert, Return:
{0:16970861903381447000,length:1}
I versucht, die Zahl als Zeichenfolge vorbei vor dem Aufruf eval
sie darauf 16970861903381446063 + ''
als Wert zu verwenden, wenn die JSON Zeichenkette erzeugt wird; Prüfen Sie es mit typeof
zeigt es als Typ zu sein string
, aber es rundet noch die Nummer 16970861903381446063 zu 16970861903381447000.
Gibt es eine Weise, die ich dies umgehen kann, oder einen besseren Weg, dies zu tun?
Es folgt der Code, der die json Text aus einem Array mit den Zahlen
function simplify(arr){
request = "{";
if (arr.length ==1){
request += 0 + ":" + (arr[0] + '') + "," ;
}
else{
for (var i=0;i<=arr.length-1 ;i++){
request += i + ":" + (arr[i] + '') + ",";
}
}
request += "length" + ":" + arr.length +"}";
return request;
}
Danke für die Bestätigung. FP ist böse. –