diff options
Diffstat (limited to 'files/hu/web/javascript/reference/global_objects/error/index.html')
| -rw-r--r-- | files/hu/web/javascript/reference/global_objects/error/index.html | 218 |
1 files changed, 0 insertions, 218 deletions
diff --git a/files/hu/web/javascript/reference/global_objects/error/index.html b/files/hu/web/javascript/reference/global_objects/error/index.html deleted file mode 100644 index f27374e30c..0000000000 --- a/files/hu/web/javascript/reference/global_objects/error/index.html +++ /dev/null @@ -1,218 +0,0 @@ ---- -title: Error -slug: Web/JavaScript/Reference/Global_Objects/Error -translation_of: Web/JavaScript/Reference/Global_Objects/Error ---- -<div>{{JSRef}}</div> - -<p>Az <code>Error</code> objektumok futásidejű hiba során keletkeznek. Továbbá ezek az alapjai a saját készítésű hibaobjektumoknak is. Később olvashatsz a beépített hiba típusokról is.</p> - -<h2 id="Leírás">Leírás</h2> - -<p>A futásidejű hibák során <code>Error</code> objektumok keletkezhetnek, illetve érkezhetnek.</p> - -<h3 id="Hiba_típusok">Hiba típusok</h3> - -<p>A generikus <code>Error</code> konstruktor mellett, A JavaScript-ben más hiba konstruktorok is léteznek. A kliens-oldali kivételek listájához, lásd, a <a href="/en-US/docs/Web/JavaScript/Guide/Statements#Exception_handling_statements">Kivételek kezelése</a> fejezetet.</p> - -<dl> - <dt>{{JSxRef("EvalError")}}</dt> - <dd>Egy olyan hibaobjektum példányát hozza létre, ami az {{JSxRef("eval", "eval()")}} globális függvénnyel kapcsolatos.</dd> - <dt>{{JSxRef("RangeError")}}</dt> - <dd>Egy olyan hibaobjektum példányát hozza létre, ami akkor történik, ha valamelyik szám típusú változó az érvényes értékkészleten kívűlre esik.</dd> - <dt>{{JSxRef("ReferenceError")}}</dt> - <dd>Egy olyan hibaobjektum példányát hozza létre, ami akkor történik, ha érvénytelen hivatkozásra történik hivatkozás.</dd> - <dt>{{JSxRef("SyntaxError")}}</dt> - <dd>Egy olyan hibaobjektum példányát hozza létre, ami egy szintaktikai hibát jelez.</dd> - <dt>{{JSxRef("TypeError")}}</dt> - <dd>Egy olyan hibaobjektum példányát hozza létre, ami akkor keletkezik, ha a változó, vagy paraméter típusa nem megfelelő, vagy érvénytelen.</dd> - <dt>{{JSxRef("URIError")}}</dt> - <dd>Egy olyan hibaobjektum példányát hozza létre, ami akkor keletkezik, ha az {{JSxRef("encodeURI", "encodeURI()")}}, vagy a {{JSxRef("decodeURI", "decodeURI()")}} függvények érvénytelen bemeneti paramétereket kapnak.</dd> - <dt>{{JSxRef("AggregateError")}}</dt> - <dd>Egy olyan hibaobjektum példányát hozza létre, ami egyszerre több hibát foglal magába. Ilyen objektum akkor jön létre, amikor egy függvényben egyidejűleg több hiba is történik. Például.: {{JSxRef("Promise.any()")}}.</dd> - <dt>{{JSxRef("InternalError")}} {{non-standard_inline}}</dt> - <dd>Egy olyan hibaobjektum példányát hozza létre, ami akkor jön létre, amikor a JavaScript motorjában belső hiba keletkezik. Pl.: "too much recursion" ("Túl sok rekurzió").</dd> -</dl> - -<h2 id="Konstruktor">Konstruktor</h2> - -<dl> - <dt><a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Error/Error"><code>Error()</code></a></dt> - <dd>Egy új <code>Error</code> objektumot hoz létre.</dd> -</dl> - -<h2 id="Statikus_függvények">Statikus függvények</h2> - -<dl> - <dt>{{JSxRef("Error.captureStackTrace()")}}</dt> - <dd>Egy nem-standard <strong>V8</strong> függvény, ami létrehoz egy {{JSxRef("Error.prototype.stack", "stack")}} tagváltozót az Error példányon.</dd> -</dl> - -<h2 id="Példány_tagváltozói">Példány tagváltozói</h2> - -<dl> - <dt>{{jsxref("Error.prototype.message")}}</dt> - <dd>Rövid hibaüzenet.</dd> - <dt>{{jsxref("Error.prototype.name")}}</dt> - <dd>A hiba neve.</dd> - <dt>{{jsxref("Error.prototype.description")}}</dt> - <dd>Egy nem-standard Microsoft tagváltozó a hiba leírásához. Hasonlít a {{jsxref("Error.prototype.message", "message")}}-hez.</dd> - <dt>{{jsxref("Error.prototype.number")}}</dt> - <dd>Egy nem-standard Microsoft tagváltozó a hiba számához.</dd> - <dt>{{jsxref("Error.prototype.fileName")}}</dt> - <dd>Egy nem-standard Mozilla tagváltozó, ami a hibát okozó fájl útvonalát tartalmazza.</dd> - <dt>{{jsxref("Error.prototype.lineNumber")}}</dt> - <dd>Egy nem-standard Mozilla tagváltozó, ami a hibát okozó fájl azon sorát jelöli, ahonnan a hiba származik.</dd> - <dt>{{jsxref("Error.prototype.columnNumber")}}</dt> - <dd>Egy nem-standard Mozilla tagváltozó, ami a hibát tartalmazó sor azon oszlopát (karakterét) jelöli, ahonnan a hiba származik.</dd> - <dt>{{jsxref("Error.prototype.stack")}}</dt> - <dd>Egy nem-standard Mozilla tagváltozó ami a stacktrace-t tartalmazza (A hiba nyomonkövetése a veremen).</dd> -</dl> - -<h2 id="Példány_függvények">Példány függvények</h2> - -<dl> - <dt>{{jsxref("Error.prototype.toString()")}}</dt> - <dd>Egy string-gel tér vissza, ami leírja az objektumot. Ez a függvény felüldefiniálja a {{jsxref("Object.prototype.toString()")}} fügvényt.</dd> -</dl> - -<h2 id="Példák">Példák</h2> - -<h3 id="Generikus_hiba_keletkezése">Generikus hiba keletkezése</h3> - -<p>Az <code>Error</code> objektumot általában akkor érdemes létrehozni, ha azt utána használjuk, vagy eldobjuk a {{JSxRef("Statements/throw", "throw")}} kulcsszó segítségével. Az ilyen hibákat a {{JSxRef("Statements/try...catch", "try...catch")}} szerkezettel lehet könnyedén kezelni:</p> - -<pre class="brush: js; notranslate">try { - throw new Error('Whoops!') -} catch (e) { - console.error(e.name + ': ' + e.message) -} -</pre> - -<h3 id="Különleges_hibák_kezelése">Különleges hibák kezelése</h3> - -<p>A hiba objektum {{JSxRef("Object.prototype.constructor", "constructor")}} tagváltozójával, illetve modern JavaScript motor használata esetén, a {{JSxRef("Operators/instanceof", "instanceof")}} kulcsszóval lehetséges a hiba objektum konkrét típusát is lekérdezni. Ezzel leszűkíthető a hibakezelés konkrét hibatípusokra:</p> - -<pre class="brush: js; notranslate">try { - foo.bar() -} catch (e) { - if (e instanceof EvalError) { - console.error(e.name + ': ' + e.message) - } else if (e instanceof RangeError) { - console.error(e.name + ': ' + e.message) - } - // ... etc -} -</pre> - -<h3 id="Saját_hiba_típusok">Saját hiba típusok</h3> - -<p>Elképzelhető, hogy saját hibatípust szereténk készíteni, ami az <code>Error</code> objektumból származik. Ezáltal tudjuk használni a <code>throw new MyError()</code> kifejezést a hiba jelzéséhez, és az <code>instanceof MyError</code> -t a különleges hiba kezeléséhez. Ezzel biztosítható a szebb és konzisztensebb hibakezelés. </p> - -<p>A kérdéskörről olvashatsz bővebben a <a href="http://stackoverflow.com/questions/1382107/whats-a-good-way-to-extend-error-in-javascript">"What's a good way to extend Error in JavaScript?"</a> című téma alatt a StackOverflow fórumán.</p> - -<h4 id="ES6_Saját_Error_Osztály">ES6 Saját Error Osztály</h4> - -<div class="blockIndicator warning"> -<p>7-es, vagy régebbi Babel verziók képesek a <code>CustomError</code> osztályfüggvények kezelésére, de csak akkor, ha azokat at <a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/defineProperty">Object.defineProperty()</a>-vel megfelelően deklarálták. Máskülönben, a Babel régebbi verziói és más fordítók nem tudják kezelni az alábbi kódrészletet <a href="https://github.com/loganfsmyth/babel-plugin-transform-builtin-extend">hozzáadott konfiguráció</a> nélkül.</p> -</div> - -<div class="blockIndicator note"> -<p>Egyes böngészőkben előfordul a <code>CustomError</code> konstruktor a stacktrace-ben, ha ES2015-ös osztályokat használunk.</p> -</div> - -<pre class="brush: js notranslate">class CustomError extends Error { - constructor(foo = 'bar', ...params) { - // Pass remaining arguments (including vendor specific ones) to parent constructor - super(...params) - - // Maintains proper stack trace for where our error was thrown (only available on V8) - if (Error.captureStackTrace) { - Error.captureStackTrace(this, CustomError) - } - - this.name = 'CustomError' - // Custom debugging information - this.foo = foo - this.date = new Date() - } -} - -try { - throw new CustomError('baz', 'bazMessage') -} catch(e) { - console.error(e.name) //CustomError - console.error(e.foo) //baz - console.error(e.message) //bazMessage - console.error(e.stack) //stacktrace -}</pre> - -<h4 id="ES5_Saját_Error_Objektumok">ES5 Saját Error Objektumok</h4> - -<div class="warning"> -<p><strong>Minden</strong> böngészőben előfordul a <code>CustomError</code> konstruktor a stacktrace-ben, ha prototípus alapján deklaráljuk azt.</p> -</div> - -<pre class="brush: js notranslate">function CustomError(foo, message, fileName, lineNumber) { - var instance = new Error(message, fileName, lineNumber); - instance.name = 'CustomError'; - instance.foo = foo; - Object.setPrototypeOf(instance, Object.getPrototypeOf(this)); - if (Error.captureStackTrace) { - Error.captureStackTrace(instance, CustomError); - } - return instance; -} - -CustomError.prototype = Object.create(Error.prototype, { - constructor: { - value: Error, - enumerable: false, - writable: true, - configurable: true - } -}); - -if (Object.setPrototypeOf){ - Object.setPrototypeOf(CustomError, Error); -} else { - CustomError.__proto__ = Error; -} - -try { - throw new CustomError('baz', 'bazMessage'); -} catch(e){ - console.error(e.name); //CustomError - console.error(e.foo); //baz - console.error(e.message); //bazMessage -}</pre> - -<h2 id="Specifikációk">Specifikációk</h2> - -<table class="standard-table"> - <thead> - <tr> - <th scope="col">Specification</th> - </tr> - </thead> - <tbody> - <tr> - <td>{{SpecName('ESDraft', '#sec-error-objects', 'Error')}}</td> - </tr> - </tbody> -</table> - -<h2 id="Böngészőkompatibilitás">Böngészőkompatibilitás</h2> - -<div> - - -<p>{{Compat("javascript.builtins.Error")}}</p> -</div> - -<h2 id="Lásd_még">Lásd még</h2> - -<ul> - <li>{{JSxRef("Statements/throw", "throw")}}</li> - <li>{{JSxRef("Statements/try...catch", "try...catch")}}</li> -</ul> |
