aboutsummaryrefslogtreecommitdiff
path: root/files/de/web/javascript/reference/errors/undefined_prop/index.html
blob: 9e63feb77b3eab154e241c2a39868fdf0b0784e2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
---
title: 'ReferenceError: reference to undefined property "x"'
slug: Web/JavaScript/Reference/Errors/Undefined_prop
tags:
  - Errors
  - JavaScript
  - ReferenceError
  - Strict Mode
translation_of: Web/JavaScript/Reference/Errors/Undefined_prop
original_slug: Web/JavaScript/Reference/Fehler/Undefined_prop
---
<div>{{jsSidebar("Errors")}}</div>

<h2 id="Fehlermeldung">Fehlermeldung</h2>

<pre class="syntaxbox">ReferenceError: reference to undefined property "x" (Firefox)
</pre>

<h2 id="Fehlertyp">Fehlertyp</h2>

<p>{{jsxref("ReferenceError")}} Fehlermeldung tritt nur im  <a href="/de/docs/Web/JavaScript/Reference/Strict_mode">strikten Modus</a> auf.</p>

<h2 id="Was_ist_falsch_gelaufen">Was ist falsch gelaufen?</h2>

<p>Es wird versucht auf eine Eigenschaft zuzugreifen, die nicht existiert. Es gibt zwei Arten um auf Eigenschaften zuzugreifen, siehe <a href="/de/docs/Web/JavaScript/Reference/Operators/Property_Accessors">Eigenschaften Zugriffsfunktionen</a> auf den Referenzseiten für weitere Details.</p>

<p>Fehler aufgrund von leeren Eigenschaftsreferenzen treten nur im Quellcode auf, der im <a href="/de/docs/Web/JavaScript/Reference/Strict_mode">strikten Modus</a> geschrieben ist. Im Quellcode der nicht im strikten Modus geschrieben ist, wird der Fehler ohne Meldung ignoriert.</p>

<h2 id="Beispiele">Beispiele</h2>

<h3 id="Ungültige_Fälle">Ungültige Fälle</h3>

<p>In diesem Fall ist die Eigenschaft "bar" undefiniert.</p>

<pre class="brush: js example-bad">"use strict";

var foo = {};
foo.bar; // ReferenceError: reference to undefined property "bar"
</pre>

<h3 id="Gültige_Fälle">Gültige Fälle</h3>

<p>Um Fehler zu vermeiden muss man eine Eigenschaft "bar" definieren oder überprüfen, ob die Eigenschaft "bar" existiert, bevor man auf diese zugreift. (z.B.: mit Hilfe der Funktion {{jsxref("Object.prototype.hasOwnProperty()")}}).</p>

<pre class="brush: js example-good">"use strict";

var foo = {};

// Definiert die bar Eigenschaft

foo.bar = "Mond";
console.log(foo.bar); // "Mond"

// Testet vor dem Zugriff, ob bar existiert.

if (foo.hasOwnProperty("bar")) {
  console.log(foo.bar);
}</pre>

<h2 id="Siehe_auch">Siehe auch</h2>

<ul>
 <li><a href="/de/docs/Web/JavaScript/Reference/Strict_mode">Strikter Modus</a></li>
</ul>