aboutsummaryrefslogtreecommitdiff
path: root/files/de/web/javascript/reference/global_objects/json/index.html
diff options
context:
space:
mode:
authorPeter Bengtsson <mail@peterbe.com>2020-12-08 14:41:15 -0500
committerPeter Bengtsson <mail@peterbe.com>2020-12-08 14:41:15 -0500
commit4b1a9203c547c019fc5398082ae19a3f3d4c3efe (patch)
treed4a40e13ceeb9f85479605110a76e7a4d5f3b56b /files/de/web/javascript/reference/global_objects/json/index.html
parent33058f2b292b3a581333bdfb21b8f671898c5060 (diff)
downloadtranslated-content-4b1a9203c547c019fc5398082ae19a3f3d4c3efe.tar.gz
translated-content-4b1a9203c547c019fc5398082ae19a3f3d4c3efe.tar.bz2
translated-content-4b1a9203c547c019fc5398082ae19a3f3d4c3efe.zip
initial commit
Diffstat (limited to 'files/de/web/javascript/reference/global_objects/json/index.html')
-rw-r--r--files/de/web/javascript/reference/global_objects/json/index.html155
1 files changed, 155 insertions, 0 deletions
diff --git a/files/de/web/javascript/reference/global_objects/json/index.html b/files/de/web/javascript/reference/global_objects/json/index.html
new file mode 100644
index 0000000000..e52af893a1
--- /dev/null
+++ b/files/de/web/javascript/reference/global_objects/json/index.html
@@ -0,0 +1,155 @@
+---
+title: JSON
+slug: Web/JavaScript/Reference/Global_Objects/JSON
+tags:
+ - JSON
+ - JavaScript
+ - Object
+ - Reference
+translation_of: Web/JavaScript/Reference/Global_Objects/JSON
+---
+<div>{{JSRef}}</div>
+
+<p>Das <strong><code>JSON</code></strong> Objekt enthält Methoden für das Einlesen und Konvertieren der <a class="external" href="https://json.org/">JavaScript Objekt Notation</a> ({{glossary("JSON")}}) in JavaScript und umgekehrt. Es kann nicht aufgerufen oder erstellt werden. Außer seinen zwei Methoden hat das Objekt keine interessante Funktionalität.</p>
+
+<h2 id="Beschreibung">Beschreibung</h2>
+
+<h3 id="JavaScript_Objekt_Notation">JavaScript Objekt Notation</h3>
+
+<p>JSON ist eine Syntax für das Serialisieren von Objekten, Arrays, Nummern, Strings, Wahrheitswerten und {{jsxref("null")}}. JSON basiert auf der JavaScript Syntax, jedoch ist sie leicht unterschiedlich: Manches JavaScript ist kein JSON und manches JSON ist kein JavaScript. Für mehr Informationen Siehe in dem Artikel <a href="http://timelessrepo.com/json-isnt-a-javascript-subset">JSON: The JavaScript subset that isn't</a>.</p>
+
+<table>
+ <caption>JavaScript und JSON Unterschiede</caption>
+ <thead>
+ <tr>
+ <th scope="col">JavaScript Typen</th>
+ <th scope="col">JSON Unterschiede</th>
+ </tr>
+ </thead>
+ <tbody>
+ <tr>
+ <td>Objekte und Arrays</td>
+ <td>Namen von Eigenschaften müssen als Strings in Doppelten Anführungszeichen (") geschrieben werden; Angefügte Kommas sind verboten.</td>
+ </tr>
+ <tr>
+ <td>Zahlen</td>
+ <td>Führende Nullen sind verboten (JSON.stringify ignoriert diese Nullen, jedoch wirft JSON.parse einen SyntaxError); Nach einem Dezimalpunkt muss mindestens eine Ziffer folgen.</td>
+ </tr>
+ <tr>
+ <td>Strings</td>
+ <td>
+ <p>Nur eine begrenzte Menge von Zeichen muss maskiert werden; Einige Kontrollzeichen sind verboten; Die Unicodezeichen Zeilenumbruch (<a href="http://unicode-table.com/en/2028/">U+2028</a>) und Paragraphenumbruch (<a href="http://unicode-table.com/en/2029/">U+2029</a>) sind erlaubt; Strings müssen in Doppelten Anführungszeichen (") geschrieben werden. Das folgenden Beispiel zeigt eine Situation in der {{jsxref("JSON.parse()")}} funktioniert, aber das Ausführen durch JavaScript zu einem {{jsxref("SyntaxError")}} führt:</p>
+
+ <pre class="brush: js">
+var code = '"\u2028\u2029"';
+JSON.parse(code); // funktioniert
+eval(code); // Error
+</pre>
+ </td>
+ </tr>
+ </tbody>
+</table>
+
+<p>Nachfolgend ist die komplette JSON Syntax zu sehen:</p>
+
+<pre class="brush: js">JSON = null
+ or true or false
+ or JSONNumber
+ or JSONString
+ or JSONObject
+ or JSONArray
+
+JSONNumber = - PositiveNumber
+ or PositiveNumber
+PositiveNumber = DecimalNumber
+ or DecimalNumber . Digits
+ or DecimalNumber . Digits ExponentPart
+ or DecimalNumber ExponentPart
+DecimalNumber = 0
+ or OneToNine Digits
+ExponentPart = e Exponent
+ or E Exponent
+Exponent = Digits
+ or + Digits
+ or - Digits
+Digits = Digit
+ or Digits Digit
+Digit = 0 through 9
+OneToNine = 1 through 9
+
+JSONString = ""
+ or " StringCharacters "
+StringCharacters = StringCharacter
+ or StringCharacters StringCharacter
+StringCharacter = any character
+ except " or \ or U+0000 through U+001F
+ or EscapeSequence
+EscapeSequence = \" or \/ or \\ or \b or \f or \n or \r or \t
+ or \u HexDigit HexDigit HexDigit HexDigit
+HexDigit = 0 through 9
+ or A through F
+ or a through f
+
+JSONObject = { }
+ or { Members }
+Members = JSONString : JSON
+ or Members , JSONString : JSON
+
+JSONArray = [ ]
+ or [ ArrayElements ]
+ArrayElements = JSON
+ or ArrayElements , JSON</pre>
+
+<p>Unbedeutende Whitespaces können überall eingebaut werden außer in eine <code><var>JSONNumber</var></code> (Nummern dürfen keine Whitespaces enthalten) und einen <code><var>JSONString</var></code> (In dem wird es als das entsprechende Whitespace interpretiert oder führt zu einem Fehler). Das Tab-Zeichen (<a href="http://unicode-table.com/en/0009/">U+0009</a>), "carriage return"-Zeichen (<a href="http://unicode-table.com/en/000D/">U+000D</a>), "line feed"-Zeichen (<a href="http://unicode-table.com/en/000A/">U+000A</a>) und Leerzeichen (<a href="http://unicode-table.com/en/0020/">U+0020</a>) sind die einzigen erlaubten Whitespace-Zeichen.</p>
+
+<h2 id="Methoden">Methoden</h2>
+
+<dl>
+ <dt>{{jsxref("JSON.parse()")}}</dt>
+ <dd>Liest einen String als JSON ein. Optional werden die Werte und die Eigenschaften Transformiert und zurückgegeben.</dd>
+ <dt>{{jsxref("JSON.stringify()")}}</dt>
+ <dd>Gibt ein JSON-String eines übergebenen Wertes zurück. Optional können nur bestimmte Eigenschaften zum JSON hinzugefügt werden oder Eigenschaften werden Ersetzt. Dieses wird durch eine Benutzerdefinierte Methode durchgeführt.</dd>
+</dl>
+
+<h2 id="Spezifikationen">Spezifikationen</h2>
+
+<table class="standard-table">
+ <tbody>
+ <tr>
+ <th scope="col">Spezifikation</th>
+ <th scope="col">Status</th>
+ <th scope="col">Kommentar</th>
+ </tr>
+ <tr>
+ <td>{{SpecName('ES5.1', '#sec-15.12', 'JSON')}}</td>
+ <td>{{Spec2('ES5.1')}}</td>
+ <td>Initiale Definition.</td>
+ </tr>
+ <tr>
+ <td>{{SpecName('ES6', '#sec-json-object', 'JSON')}}</td>
+ <td>{{Spec2('ES6')}}</td>
+ <td> </td>
+ </tr>
+ <tr>
+ <td>{{SpecName('ESDraft', '#sec-json-object', 'JSON')}}</td>
+ <td>{{Spec2('ESDraft')}}</td>
+ <td> </td>
+ </tr>
+ </tbody>
+</table>
+
+<h2 id="Browserkompatibilität">Browserkompatibilität</h2>
+
+<div>
+<div>
+
+
+<p>{{Compat("javascript.builtins.JSON")}}</p>
+</div>
+</div>
+
+<h2 id="Siehe_auch">Siehe auch</h2>
+
+<ul>
+ <li>{{jsxref("Date.prototype.toJSON()")}}</li>
+</ul>