diff options
Diffstat (limited to 'files/nl/web/javascript/reference/operators')
| -rw-r--r-- | files/nl/web/javascript/reference/operators/index.html | 289 | ||||
| -rw-r--r-- | files/nl/web/javascript/reference/operators/typeof/index.html | 245 |
2 files changed, 0 insertions, 534 deletions
diff --git a/files/nl/web/javascript/reference/operators/index.html b/files/nl/web/javascript/reference/operators/index.html deleted file mode 100644 index 343d0bcbda..0000000000 --- a/files/nl/web/javascript/reference/operators/index.html +++ /dev/null @@ -1,289 +0,0 @@ ---- -title: Expressies and operators -slug: Web/JavaScript/Reference/Operators -translation_of: Web/JavaScript/Reference/Operators -original_slug: Web/JavaScript/Reference/Operatoren ---- -<div>{{jsSidebar("Operators")}}</div> - -<p>Deze documentatie bevat informatie over JavaScript operators.</p> - -<h2 id="Expressies_en_operators_per_categorie">Expressies en operators per categorie</h2> - -<p>Voor alfabetische lijst, zie sidebar.</p> - -<h3 id="Primaire_expressies">Primaire expressies</h3> - -<p>Trefwoorden en algmene expressies in JavaScript.</p> - -<dl> - <dt>{{jsxref("Operators/this", "this")}}</dt> - <dd><code>this</code> verwijst naar de context van een functie.</dd> - <dt>{{jsxref("Operators/function", "function")}}</dt> - <dd><code>function</code> geeft aan dat er een functie moet worden gemaakt</dd> - <dt>{{experimental_inline}} {{jsxref("Operators/class", "class")}}</dt> - <dd><code>class</code> definieert een klasse.</dd> - <dt>{{experimental_inline}} {{jsxref("Operators/function*", "function*")}}</dt> - <dd><code><font face="Open Sans, Arial, sans-serif">Het </font>function*</code> trefwoord definieert een generator functie expressie.</dd> - <dt>{{experimental_inline}} {{jsxref("Operators/yield", "yield")}}</dt> - <dd>Pauzeer en start een generator functie.</dd> - <dt>{{experimental_inline}} {{jsxref("Operators/yield*", "yield*")}}</dt> - <dd>Doorgegeven aan een andere generator functie.</dd> - <dt>{{jsxref("Global_Objects/Array", "[]")}}</dt> - <dd>Definieert een lijst met data.</dd> - <dt>{{jsxref("Operators/Object_initializer", "{}")}}</dt> - <dd>Definieert een object.</dd> - <dt>{{jsxref("Global_Objects/RegExp", "/ab+c/i")}}</dt> - <dd>Reguliere expressie.</dd> - <dt>{{experimental_inline}} {{jsxref("Operators/Array_comprehensions", "[for (x of y) x]")}}</dt> - <dd>Datalijst omvang.</dd> - <dt>{{experimental_inline}} {{jsxref("Operators/Generator_comprehensions", "(for (x of y) y)")}}</dt> - <dd>Generator omvang.</dd> - <dt>{{jsxref("Operators/Grouping", "( )")}}</dt> - <dd>Groep operator.</dd> -</dl> - -<h3 id="Left-hand-side_expressies">Left-hand-side expressies</h3> - -<p>Deze voeren een opdracht uit met een van de bovenstaande expressies.</p> - -<dl> - <dt>{{jsxref("Operators/Property_accessors", "Property accessors", "", 1)}}</dt> - <dd>Haalt data uit een object op<br> - (<code>object.property</code> en <code>object["property"]</code>).</dd> - <dt>{{jsxref("Operators/new", "new")}}</dt> - <dd>Maakt een nieuwe constructor.</dd> - <dt>{{experimental_inline}} <a href="/en-US/docs/Web/JavaScript/Reference/Operators/new.target">new.target</a></dt> - <dd>In constructors, <code>new.target</code> verwijst naar het object dat werd aangeroepen door {{jsxref("Operators/new", "new")}}. </dd> - <dt>{{experimental_inline}} {{jsxref("Operators/super", "super")}}</dt> - <dd><code><font face="Open Sans, Arial, sans-serif">Het </font>super</code> keywoord verwijst naar de hoofdconstructor.</dd> - <dt>{{experimental_inline}} {{jsxref("Operators/Spread_operator", "...obj")}}</dt> - <dd>De spread operator stelt een expressie uit te breiden op plaatsen waar meerdere argumenten (voor de functies die opgeroepen worden) of meerdere elementen (voor Array literalen) zijn verplicht.</dd> -</dl> - -<h3 id="Optellen_en_Aftrekken">Optellen en Aftrekken</h3> - -<p>Voor optellen en aftrekken bij variabelen.</p> - -<dl> - <dt>{{jsxref("Operators/Arithmetic_Operators", "A++", "#Increment")}}</dt> - <dd>Achtervoegsel optel operator.</dd> - <dt>{{jsxref("Operators/Arithmetic_Operators", "A--", "#Decrement")}}</dt> - <dd>Achtervoegsel aftrek operator.</dd> - <dt>{{jsxref("Operators/Arithmetic_Operators", "++A", "#Increment")}}</dt> - <dd>Voorvoegsel optel operator.</dd> - <dt>{{jsxref("Operators/Arithmetic_Operators", "--A", "#Decrement")}}</dt> - <dd>Voorvoegsel aftrek operator.</dd> -</dl> - -<h3 id="Unaire_operatoren">Unaire operatoren</h3> - -<p>Een unaire operatie is een operatie met slechts één operand.</p> - -<dl> - <dt>{{jsxref("Operators/delete", "delete")}}</dt> - <dd>De <code>delete</code> operator verwijdert een object of item van een object.</dd> - <dt>{{jsxref("Operators/void", "void")}}</dt> - <dd>De <code>void</code> operator verwijdert de returnwaarde van een expressie.</dd> - <dt>{{jsxref("Operators/typeof", "typeof")}}</dt> - <dd>De <code>typeof</code> operator geeft het type van het object.</dd> - <dt>We zijn bezig met vertalen van het document, maar we zijn nog niet klaar.</dt> -</dl> - -<dl> - <dt>{{jsxref("Operators/Arithmetic_Operators", "+", "#Unary_plus")}}</dt> - <dd>De unaire plus operator zet zijn operand om naar type Number</dd> - <dt>{{jsxref("Operators/Arithmetic_Operators", "-", "#Unary_negation")}}</dt> - <dd>De unaire negatie operator zet zijn operand om naar Number en zet hem dan om in haar tegendeel.</dd> - <dt>{{jsxref("Operators/Bitwise_Operators", "~", "#Bitwise_NOT")}}</dt> - <dd>Bitwise NOT operator.</dd> - <dt>{{jsxref("Operators/Logical_Operators", "!", "#Logical_NOT")}}</dt> - <dd>Logische NOT operator.</dd> -</dl> - -<h3 id="Rekenkundige_operators">Rekenkundige operators</h3> - -<p>Rekenkundige operators accepteren numerieke waarden (letterlijke waarden of variablen) als hun operand en retourneren een enkele numerieke waarde.</p> - -<dl> - <dt>{{jsxref("Operators/Arithmetic_Operators", "+", "#Addition")}}</dt> - <dd>Additie operator.</dd> - <dt>{{jsxref("Operators/Arithmetic_Operators", "-", "#Subtraction")}}</dt> - <dd>Subtractie operator.</dd> - <dt>{{jsxref("Operators/Arithmetic_Operators", "/", "#Division")}}</dt> - <dd>Divisie operator.</dd> - <dt>{{jsxref("Operators/Arithmetic_Operators", "*", "#Multiplication")}}</dt> - <dd>Multiplicatie operator.</dd> - <dt>{{jsxref("Operators/Arithmetic_Operators", "%", "#Remainder")}}</dt> - <dd>Rest operator.</dd> -</dl> - -<dl> - <dt>{{experimental_inline}} {{jsxref("Operators/Arithmetic_Operators", "**", "#Exponentiation")}}</dt> - <dd>Exponent operator.</dd> -</dl> - -<h3 id="Relationele_operators">Relationele operators</h3> - -<p>Een relationele operator vergelijkt zijn operanden en retourneert een Boolean gebaseerd op de uitkomst van de vergelijking.</p> - -<dl> - <dt>{{jsxref("Operators/in", "in")}}</dt> - <dd>De <code>in</code> operator bepaalt of een object een zekere eigenschap heeft.</dd> - <dt>{{jsxref("Operators/instanceof", "instanceof")}}</dt> - <dd>De <code>instanceof</code> operator bepaalt of een variable een instantie is van een bepaald type object.</dd> - <dt>{{jsxref("Operators/Comparison_Operators", "<", "#Less_than_operator")}}</dt> - <dd>Minder dan operator.</dd> - <dt>{{jsxref("Operators/Comparison_Operators", ">", "#Greater_than_operator")}}</dt> - <dd>Groter dan operator.</dd> - <dt>{{jsxref("Operators/Comparison_Operators", "<=", "#Less_than_or_equal_operator")}}</dt> - <dd>Minder dan of gelijk aan operator.</dd> - <dt>{{jsxref("Operators/Comparison_Operators", ">=", "#Greater_than_or_equal_operator")}}</dt> - <dd>Groter dan of gelijk aan operator.</dd> -</dl> - -<h3 id="Gelijkheids_operators">Gelijkheids operators</h3> - -<p>Het resultaat van het evalueren van een gelijkheids operator geeft altijd een Boolean gebaseerd op het resultaat van de vergelijking.</p> - -<dl> - <dt>{{jsxref("Operators/Comparison_Operators", "==", "#Equality")}}</dt> - <dd>Gelijkheids operator.</dd> - <dt>{{jsxref("Operators/Comparison_Operators", "!=", "#Inequality")}}</dt> - <dd>Ongelijkheids operator.</dd> - <dt>{{jsxref("Operators/Comparison_Operators", "===", "#Identity")}}</dt> - <dd>Identiciteits operator.</dd> - <dt>{{jsxref("Operators/Comparison_Operators", "!==", "#Nonidentity")}}</dt> - <dd>Nonidenticiteits operator.</dd> -</dl> - -<h3 id="Bitwijs_shift_operators">Bitwijs shift operators</h3> - -<p>Operaties die alle bits van de operand verschuiven.</p> - -<dl> - <dt>{{jsxref("Operators/Bitwise_Operators", "<<", "#Left_shift")}}</dt> - <dd>Bitwijs linker shift operator.</dd> - <dt>{{jsxref("Operators/Bitwise_Operators", ">>", "#Right_shift")}}</dt> - <dd>Bitwijs rechter shift operator.</dd> - <dt>{{jsxref("Operators/Bitwise_Operators", ">>>", "#Unsigned_right_shift")}}</dt> - <dd>Bitwijs tekenloze rechter shift operator.</dd> -</dl> - -<h3 id="Binaire_bitwijs_operators">Binaire bitwijs operators</h3> - -<p>Bitwijs operatoren behandelen hun operand als een set van 32 bits en retourneren een standaard JavaScript numerieke waarde.</p> - -<dl> - <dt>{{jsxref("Operators/Bitwise_Operators", "&", "#Bitwise_AND")}}</dt> - <dd>Bitwijs AND.</dd> - <dt>{{jsxref("Operators/Bitwise_Operators", "|", "#Bitwise_OR")}}</dt> - <dd>Bitwijs OR.</dd> - <dt>{{jsxref("Operators/Bitwise_Operators", "^", "#Bitwise_XOR")}}</dt> - <dd>Bitwijs XOR.</dd> -</dl> - -<h3 id="Binaire_logische_operators">Binaire logische operators</h3> - -<p>Logische operatoren worden normaliter gebruikt met Booleans en retourneren ook een Boolean waarde.</p> - -<dl> - <dt>{{jsxref("Operators/Logical_Operators", "&&", "#Logical_AND")}}</dt> - <dd>Logische AND.</dd> - <dt>{{jsxref("Operators/Logical_Operators", "||", "#Logical_OR")}}</dt> - <dd>Logische OR.</dd> -</dl> - -<h3 id="Conditionele_(ternary)_operator">Conditionele (ternary) operator</h3> - -<dl> - <dt>{{jsxref("Operators/Conditional_Operator", "(condition ? ifTrue : ifFalse)")}}</dt> - <dd> - <p>The conditionele operator retourneert een of twee waarden gebaseerd op de waarde van de conditie.</p> - </dd> -</dl> - -<h3 id="Toekennings_operators">Toekennings operators</h3> - -<p>Een toekennings operator kent een waarde toe aan zijn linker operand gebaseerd op de waarde van zijn rechter operand.</p> - -<dl> - <dt>{{jsxref("Operators/Assignment_Operators", "=", "#Assignment")}}</dt> - <dd>Toekennings operator.</dd> - <dt>{{jsxref("Operators/Assignment_Operators", "*=", "#Multiplication_assignment")}}</dt> - <dd>Vermenigvuldigings toekenning.</dd> - <dt>{{jsxref("Operators/Assignment_Operators", "/=", "#Division_assignment")}}</dt> - <dd>Delings toekenning.</dd> - <dt>{{jsxref("Operators/Assignment_Operators", "%=", "#Remainder_assignment")}}</dt> - <dd>Rest toekenning.</dd> - <dt>{{jsxref("Operators/Assignment_Operators", "+=", "#Addition_assignment")}}</dt> - <dd>Additieve toekenning.</dd> - <dt>{{jsxref("Operators/Assignment_Operators", "-=", "#Subtraction_assignment")}}</dt> - <dd>Substractieve toekenning</dd> - <dt>{{jsxref("Operators/Assignment_Operators", "<<=", "#Left_shift_assignment")}}</dt> - <dd>Linker shift toekenning.</dd> - <dt>{{jsxref("Operators/Assignment_Operators", ">>=", "#Right_shift_assignment")}}</dt> - <dd>Rechter shift toekenning.</dd> - <dt>{{jsxref("Operators/Assignment_Operators", ">>>=", "#Unsigned_right_shift_assignment")}}</dt> - <dd>Tekenloze rechter shift toekenning.</dd> - <dt>{{jsxref("Operators/Assignment_Operators", "&=", "#Bitwise_AND_assignment")}}</dt> - <dd>Bitwijs AND toekenning.</dd> - <dt>{{jsxref("Operators/Assignment_Operators", "^=", "#Bitwise_XOR_assignment")}}</dt> - <dd>Bitwijs XOR toekenning.</dd> - <dt>{{jsxref("Operators/Assignment_Operators", "|=", "#Bitwise_OR_assignment")}}</dt> - <dd>Bitwijs OR toekenning.</dd> - <dt>{{experimental_inline}} {{jsxref("Operators/Destructuring_assignment", "[a, b] = [1, 2]")}}<br> - {{experimental_inline}} {{jsxref("Operators/Destructuring_assignment", "{a, b} = {a:1, b:2}")}}</dt> - <dd> - <p>Ontbindings toekenningen maken het mogelijk eigenschappen van een array of object toe te kennen aan letterlijke arrays of objecten. </p> - </dd> -</dl> - -<h3 id="Komma_operator">Komma operator</h3> - -<dl> - <dt>{{jsxref("Operators/Comma_Operator", ",")}}</dt> - <dd>De komma operator maakt het mogelijk meerdere expressies te evalueren in een enkele statement en retourneert het resultaat van de laatste expressie.</dd> -</dl> - -<h3 id="Niet-standaard_features">Niet-standaard features</h3> - -<dl> - <dt>{{non-standard_inline}} {{jsxref("Operators/Legacy_generator_function", "Legacy generator function", "", 1)}}</dt> - <dd>Het <code>function</code> trefwoord kan worden gebruikt om een legacy generator functie te omschrijven binnen een expressie. Hiertoe moet de inhoud van de functie minstens 1 {{jsxref("Operators/yield", "yield")}} expressie bevatten.</dd> - <dt>{{non-standard_inline}} {{jsxref("Operators/Expression_closures", "Expression closures", "", 1)}}</dt> - <dd>De expressie sluitings syntax is een mogelijkheid om een verkorte functie te schrijven.</dd> -</dl> - -<h2 id="Specifications">Specifications</h2> - -<table class="standard-table"> - <tbody> - <tr> - <th scope="col">Specification</th> - <th scope="col">Status</th> - <th scope="col">Comment</th> - </tr> - <tr> - <td>{{SpecName('ES6', '#sec-ecmascript-language-expressions', 'ECMAScript Language: Expressions')}}</td> - <td>{{Spec2('ES6')}}</td> - <td>New: Spread operator, destructuring assignment, <code>super</code> keyword, Array comprehensions, Generator comprehensions</td> - </tr> - <tr> - <td>{{SpecName('ES5.1', '#sec-11', 'Expressions')}}</td> - <td>{{Spec2('ES5.1')}}</td> - <td> </td> - </tr> - <tr> - <td>{{SpecName('ES1', '#sec-11', 'Expressions')}}</td> - <td>{{Spec2('ES1')}}</td> - <td>Initial definition</td> - </tr> - </tbody> -</table> - -<h2 id="See_also">See also</h2> - -<ul> - <li><a href="/en-US/docs/Web/JavaScript/Reference/Operators/Operator_Precedence">Operator precedence</a></li> -</ul> diff --git a/files/nl/web/javascript/reference/operators/typeof/index.html b/files/nl/web/javascript/reference/operators/typeof/index.html deleted file mode 100644 index 59f20db7f7..0000000000 --- a/files/nl/web/javascript/reference/operators/typeof/index.html +++ /dev/null @@ -1,245 +0,0 @@ ---- -title: typeof -slug: Web/JavaScript/Reference/Operators/typeof -tags: - - JavaScript - - Operator - - Unair -translation_of: Web/JavaScript/Reference/Operators/typeof -original_slug: Web/JavaScript/Reference/Operatoren/typeof ---- -<div>{{jsSidebar("Operators")}}</div> - -<p>De <strong><code>typeof</code>-operator</strong> geeft een string terug die het type van de ongeëvalueerde operand weergeeft.</p> - -<h2 id="Syntaxis">Syntaxis</h2> - -<p>De <code>typeof</code>-operator wordt gevolgd door zijn operand:</p> - -<pre class="syntaxbox"><code>typeof <code><em>operand</em></code></code></pre> - -<h3 id="Parameters">Parameters</h3> - -<p><code><em>operand</em></code> is een uitdrukking die het object of de {{Glossary("Primitive", "primitief")}} voorstelt waarvan het type moet worden teruggegeven.</p> - -<h2 id="Beschrijving">Beschrijving</h2> - -<p>De volgende tabel bevat de mogelijke waarden die <code>typeof</code> kan teruggeven. Voor meer informatie over types of primitieven, zie pagina <a href="/nl/docs/Web/JavaScript/Data_structures">datastructuren in Javascript</a>.</p> - -<table class="standard-table"> - <thead> - <tr> - <th scope="col">Type</th> - <th scope="col">Resultaat</th> - </tr> - </thead> - <tbody> - <tr> - <td>Undefined</td> - <td><code>"undefined"</code></td> - </tr> - <tr> - <td>Null</td> - <td><code>"object" </code>(see below)</td> - </tr> - <tr> - <td>Boolean</td> - <td><code>"boolean"</code></td> - </tr> - <tr> - <td>Number</td> - <td><code>"number"</code></td> - </tr> - <tr> - <td>String</td> - <td><code>"string"</code></td> - </tr> - <tr> - <td>Symbol (nieuw in ECMAScript 2015)</td> - <td><code>"symbol"</code></td> - </tr> - <tr> - <td>Host object (voorzien door de JS omgeving)</td> - <td><em>Implementatie-afhankelijk</em></td> - </tr> - <tr> - <td>Function object (implementeert [[Call]] in termen van ECMA-262)</td> - <td><code>"function"</code></td> - </tr> - <tr> - <td>Elk ander object</td> - <td><code>"object"</code></td> - </tr> - </tbody> -</table> - -<p> </p> - -<h2 id="Voorbeelden">Voorbeelden</h2> - -<pre class="brush:js">// Nummers -typeof 37 === 'number'; -typeof 3.14 === 'number'; -typeof(42) === 'number'; -typeof Math.LN2 === 'number'; -typeof Infinity === 'number'; -typeof NaN === 'number'; // Ondanks dat het "Not-A-Number" is -typeof Number(1) === 'number'; // maar gebruik deze manier nooit! - - -// Strings -typeof "" === 'string'; -typeof "bla" === 'string'; -typeof (typeof 1) === 'string'; // typeof geeft altijd een string terug -typeof String("abc") === 'string'; // maar gebruik deze manier nooit! - - -// Booleans -typeof true === 'boolean'; -typeof false === 'boolean'; -typeof Boolean(true) === 'boolean'; // maar gebruik deze manier nooit! - - -// Symbolen -typeof Symbol() === 'symbol' -typeof Symbol('foo') === 'symbol' -typeof Symbol.iterator === 'symbol' - - -// Ongedefinieerd -typeof undefined === 'undefined'; -typeof declaredButUndefinedVariable === 'undefined'; -typeof undeclaredVariable === 'undefined'; - - -// Objecten -typeof {a:1} === 'object'; - -// gebruik <a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/isArray" title="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/isArray">Array.isArray</a> of Object.prototype.toString.call -// om het verschil aan te geven tussen normale objecten en -// arrays (rijen). -typeof [1, 2, 4] === 'object'; - -typeof new Date() === 'object'; - - -// Het volgende is verwarrend. Niet gebruiken! -typeof new Boolean(true) === 'object'; -typeof new Number(1) === 'object'; -typeof new String("abc") === 'object'; - - -// Functies -typeof function(){} === 'function'; -typeof class C {} === 'function'; -typeof Math.sin === 'function'; -</pre> - -<h3 id="null"><code>null</code></h3> - -<pre class="brush:js">// Dit geldt sinds het ontstaan van JavaScript -typeof null === 'object'; -</pre> - -<p>In de oorspronkelijke implementatie van JavaScript werden JavaScript-waarden gerepresenteerd met een type-label en een waarde. Het type-label voor de meeste objecten was 0. <code>null</code> werd voorgesteld als de NULL-pointer (0x00 in de meeste platformen). Daarom had null het type-label 0, wat de foute <code>typeof</code> teruggeefwaarde verklaart. (<a href="http://www.2ality.com/2013/10/typeof-null.html">referentie</a>)</p> - -<p>Een oplossing (via een opt-in) werd voorgesteld voor ECMAScript, maar die <a class="external" href="http://wiki.ecmascript.org/doku.php?id=harmony:typeof_null">werd afgekeurd</a>. Anders zou het er als volgt hebben uitgezien: <code>typeof null === 'null'</code>.</p> - -<h3 id="De_new-operator_gebruiken">De <code>new</code>-operator gebruiken</h3> - -<pre class="brush:js">// Alle constructorfuncties die worden geïnstantieerd met het -// 'new'-sleutelwoord, zullen altijd typeof 'object' zijn. -var str = new String('String'); -var num = new Number(100); - -typeof str; // Geeft 'object' terug -typeof num; // Geeft 'object' terug - -// Maar er is een uitzondering in het geval van de functieconstructor van JavaScript. - -var func = new Function(); - -typeof func; // Geeft 'function' terug -</pre> - -<h3 id="Reguliere_uitdrukkingen">Reguliere uitdrukkingen</h3> - -<p>Aanroepbare reguliere uitdrukkingen waren een niet-standaard toevoeging in sommige browsers.</p> - -<pre class="brush:js">typeof /s/ === 'function'; // Chrome 1-12 Niet comform aan ECMAScript 5.1 -typeof /s/ === 'object'; // Firefox 5+ Conform aan ECMAScript 5.1 -</pre> - -<h3 id="Temporal_Dead_Zone-fouten">Temporal Dead Zone-fouten</h3> - -<p>Voor ECMAScript 2015 gaf <code>typeof</code> altijd gegarandeerd een string terug voor elke operand waarmee het was voorzien. Maar met de toevoeging van niet-gehoiste, blokgekaderde <code><a href="/nl/docs/Web/JavaScript/Reference/Statements/let">let</a></code> en <code><a href="/nl/docs/Web/JavaScript/Reference/Statements/const">const</a></code> ontstaat er een <code><a href="/nl/docs/Web/JavaScript/Reference/Global_Objects/ReferenceError">ReferenceError</a></code> als <code>typeof</code> op <code>let</code>- en <code>const</code>-variabelen wordt gebruikt voordat ze zijn benoemd. Dit staat in contrast met onbenoemde variabelen, waarvoor <code>typeof</code> 'undefined' teruggeeft. Blokgekaderde variabelen zijn in een "<a href="/nl/docs/Web/JavaScript/Reference/Statements/let#Temporal_Dead_Zone_and_errors_with_let">temporal dead zone</a>" vanaf het begin van het blok totdat de intialisatie is verwerkt, waarin een fout ontstaat als ze worden benaderd.</p> - -<pre class="brush: js">typeof onbenoemdeVariabele === 'undefined'; -typeof nieuweLetVariabele; let nieuweLetVariabele; // ReferenceError -typeof nieuweConstVariabele; const nieuweConstVariabele = 'hallo'; // ReferenceError -</pre> - -<h3 id="Uitzonderingen">Uitzonderingen</h3> - -<p>Alle huidige browsers onthullen een niet-standaard hostobject {{domxref("document.all")}} met type u<code>ndefined</code>.</p> - -<pre class="brush:js">typeof document.all === 'undefined'; -</pre> - -<p>Hoewel de specificatie aangepaste type-labels toestaat voor niet-standaard exotische objecten, vereist het dat die type-labels verschillen van de ingebouwde. Dat <code>document.all</code> een type-label <code>undefined</code> heeft moet worden geclassificeerd als een uitzonderlijke overtreding van de regels.</p> - -<h2 id="Specificaties">Specificaties</h2> - -<table class="standard-table"> - <tbody> - <tr> - <th scope="col">Specificatie</th> - <th scope="col">Status</th> - <th scope="col">Opmerking</th> - </tr> - <tr> - <td>{{SpecName('ESDraft', '#sec-typeof-operator', 'The typeof Operator')}}</td> - <td>{{Spec2('ESDraft')}}</td> - <td> </td> - </tr> - <tr> - <td>{{SpecName('ES6', '#sec-typeof-operator', 'The typeof Operator')}}</td> - <td>{{Spec2('ES6')}}</td> - <td> </td> - </tr> - <tr> - <td>{{SpecName('ES5.1', '#sec-11.4.3', 'The typeof Operator')}}</td> - <td>{{Spec2('ES5.1')}}</td> - <td> </td> - </tr> - <tr> - <td>{{SpecName('ES3', '#sec-11.4.3', 'The typeof Operator')}}</td> - <td>{{Spec2('ES3')}}</td> - <td> </td> - </tr> - <tr> - <td>{{SpecName('ES1', '#sec-11.4.3', 'The typeof Operator')}}</td> - <td>{{Spec2('ES1')}}</td> - <td>Oorspronkelijke definitie. Geïmplementeerd in JavaScript 1.1.</td> - </tr> - </tbody> -</table> - -<h2 id="Browsercompatibiliteit">Browsercompatibiliteit</h2> - -<div class="hidden">https://github.com/mdn/browser-compat-data en stuur ons een pull request.</div> - -<p>{{Compat("javascript.operators.typeof")}}</p> - -<h2 id="IE-specifieke_opmerkingen">IE-specifieke opmerkingen</h2> - -<p>In IE 6, 7, en 8 zijn een groot aantal host objecten objecten en geen functions. bijvoorbeeld:</p> - -<pre class="brush: js">typeof alert === 'object'</pre> - -<h2 id="Zie_ook">Zie ook</h2> - -<ul> - <li><code><a href="/nl/docs/Web/JavaScript/Reference/Operators/instanceof" title="/nl/docs/JavaScript/Reference/Operators/instanceof">instanceof</a></code></li> - <li><a href="http://es-discourse.com/t/why-typeof-is-no-longer-safe/15">Waarom typeof niet meer "veilig" is</a></li> -</ul> |
