Speichern Sie eine Funktion in localstorage

Ich arbeite mit einigen Objekten, die eine Reihe von Daten enthalten, die vom Browser angezeigt und bearbeitet werden sollen, und ich möchte sie lokal speichern. Um Objekte zu speichern, habe ich JSON.stringify () verwendet, damit alles zu Text wird und es gut funktioniert

{
"bindingRef": [],
"primo": {
    "name": "primo",
    "modifiable": true,
    "binded": false,
    "isInteger": false,
    "label": "Numero di Primi"
},
"secondo": {
    "name": "secondo",
    "modifiable": true,
    "binded": false,
    "isInteger": false,
    "label": "Numero di Secondi"
}
}

Jetzt versuche ich, auch eine Funktion zu speichern, indem ich sie in einen String konvertiere und dann speichere

JSON.stringify(myFunction.toString());

aber die Ausgabe ist das

"savedFunction": "function () {\n\t\t\t\tvar tot = menu.primo.get() * 6 + menu.secondo.get() * 8 + menu.dolce.get() * 4;\n\t\t\t\tif (menu.sconto.get()) {\n\t\t\t\t\treturn tot * 0.90;\n\t\t\t\t} else {\n\t\t\t\t\treturn tot;\n\t\t\t\t}\n\t\t\t}"

Ist es der richtige Weg, eine Funktion im lokalen Speicher zu speichern, oder gibt es einen besseren Weg, dies zu tun? Wenn dies der richtige Weg ist, gibt es eine Möglichkeit, Tabellierungs- / Einrückungszeichen einfach zu entfernen, oder sollte ich die Zeichenfolge beispielsweise mit einer Regexp-Funktion bearbeiten?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage