JS Tutoriaal

JS TUIS JS Inleiding JS Waarheen JS Uitset JS Verklarings JS sintaksis JS Kommentaar JS veranderlikes JS Laat JS Konst JS-operateurs JS Rekenkunde JS Opdrag JS datatipes JS Funksies JS Voorwerpe JS Events JS Strings JS String Metodes JS String Soek JS String Templates JS nommers JS-nommermetodes JS Skikkings JS Skikking Metodes JS Array Sorteer JS Skikking Iterasie JS Array Konst JS Datums JS Datum Formate JS Datum Kry Metodes JS Datum Stel Metodes JS Wiskunde JS Random JS Booleans JS Vergelykings JS Voorwaardes JS Skakelaar JS Loop Vir JS Loop For In JS Loop Vir Van JS Loop Terwyl JS Break JS Iterables JS-stelle JS Kaarte JS tipe JS Tipe Omskakeling JS Bitwise JS RegExp JS foute JS Bestek JS Hysing JS Streng modus JS hierdie sleutelwoord JS Arrow Funksie JS Klasse JS JSON JS Ontfouting JS Stylgids JS Beste Praktyke JS foute JS prestasie JS Voorbehou Woorde

JS weergawes

JS weergawes JS 2009 (ES5) JS 2015 (ES6) JS 2016 JS 2017 JS 2018 JS IE / Edge JS Geskiedenis

JS Voorwerpe

Voorwerpdefinisies Voorwerp Eienskappe Voorwerp Metodes Voorwerp vertoon Voorwerptoebehore Voorwerpkonstrukteurs Voorwerpprototipes Object Iterables Voorwerpstelle Voorwerpkaarte Voorwerpverwysing

JS Funksies

Funksie definisies Funksie parameters Funksie Aanroep Funksie oproep Funksie Pas toe Funksie sluitings

JS Klasse

Klasintro Klas Erfenis Klas Staties

JS Async

JS Terugbelle JS Asynchroon JS Beloftes JS Async/Wag

JS HTML DOM

DOM Inleiding DOM Metodes DOM-dokument DOM Elemente DOM HTML DOM-vorms DOM CSS DOM-animasies DOM-geleenthede DOM Gebeurtenis Luisteraar DOM-navigasie DOM nodusse DOM Versamelings DOM Node lyste

JS Browser BOM

JS venster JS skerm JS ligging JS Geskiedenis JS Navigator JS Popup Alert JS Tydsberekening JS koekies

JS Web API's

Web API Inleiding Webvorms API Webgeskiedenis API Webberging API Webwerker API Web haal API Web Geolocation API

JS AJAX

AJAX Intro AJAX XMLHttp AJAX-versoek AJAX-reaksie AJAX XML-lêer AJAX PHP AJAX ASP AJAX-databasis AJAX toepassings AJAX voorbeelde

JS JSON

JSON Inleiding JSON-sintaksis JSON vs XML JSON-datatipes JSON Ontleed JSON Stringify JSON-voorwerpe JSON-skikkings JSON-bediener JSON PHP JSON HTML JSON JSONP

JS vs jQuery

jQuery keurders jQuery HTML jQuery CSS jQuery DOM

JS grafika

JS grafika JS Canvas JS Plot JS Chart.js JS Google Chart JS D3.js

JS Voorbeelde

JS Voorbeelde JS HTML DOM JS HTML-invoer JS HTML-voorwerpe JS HTML-geleenthede JS Blaaier JS Redakteur JS Oefeninge JS Vasvra JS Sertifikaat

JS Verwysings

JavaScript-voorwerpe HTML DOM-voorwerpe


JavaScript laat

Die letsleutelwoord is in ES6 (2015) bekendgestel .

Veranderlikes gedefinieer met letkan nie Herverklaar word nie.

Veranderlikes gedefinieer met letmoet voor gebruik verklaar word.

Veranderlikes gedefinieer met lethet Blok Omvang.

Kan nie herverklaar word nie

Veranderlikes gedefinieer met letkan nie herverklaar word nie .

Jy kan nie per ongeluk 'n veranderlike herverklaar nie.

Met letjy kan dit nie doen nie:

Voorbeeld

let x = "John Doe";

let x = 0;

// SyntaxError: 'x' has already been declared

Met varjy kan:

Voorbeeld

var x = "John Doe";

var x = 0;

Blok Omvang

Voor ES6 (2015) het JavaScript net Global Scope en Function Scope gehad .

ES6 het twee belangrike nuwe JavaScript-sleutelwoorde bekendgestel: leten const.

Hierdie twee sleutelwoorde bied Block Scope in JavaScript.

Veranderlikes wat binne 'n { }-blok verklaar word, kan nie van buite die blok verkry word nie:

Voorbeeld

{
  let x = 2;
}
// x can NOT be used here

Veranderlikes wat met die varsleutelwoord verklaar word, kan NIE blokomvang hê nie.

Veranderlikes wat binne 'n { }-blok verklaar word, kan van buite die blok verkry word.

Voorbeeld

{
  var x = 2;
}
// x CAN be used here

Herverklaar veranderlikes

Die herverklaring van 'n veranderlike met behulp van die varsleutelwoord kan probleme veroorsaak.

Om 'n veranderlike binne 'n blok te herverklaar sal ook die veranderlike buite die blok herverklaar:

Voorbeeld

var x = 10;
// Here x is 10

{
var x = 2;
// Here x is 2
}

// Here x is 2

Om 'n veranderlike te herverklaar deur die letsleutelwoord te gebruik, kan hierdie probleem oplos.

Om 'n veranderlike binne 'n blok te herverklaar sal nie die veranderlike buite die blok herverklaar nie:

Voorbeeld

let x = 10;
// Here x is 10

{
let x = 2;
// Here x is 2
}

// Here x is 10

Blaaierondersteuning

Die letsleutelwoord word nie ten volle in Internet Explorer 11 of vroeër ondersteun nie.

Die volgende tabel definieer die eerste blaaierweergawes met volle ondersteuning vir die letsleutelwoord:

Chrome 49 Edge 12 Firefox 44 Safari 11 Opera 36
Mar, 2016 Jul, 2015 Jan, 2015 Sep, 2017 Mar, 2016


Herverklaar

Die herverklaring van 'n JavaScript-veranderlike met varword enige plek in 'n program toegelaat:

Voorbeeld

var x = 2;
// Now x is 2

var x = 3;
// Now x is 3

Met let, word die herverklaring van 'n veranderlike in dieselfde blok NIE toegelaat nie:

Voorbeeld

var x = 2;    // Allowed
let x = 3;    // Not allowed

{
let x = 2;    // Allowed
let x = 3     // Not allowed
}

{
let x = 2;    // Allowed
var x = 3     // Not allowed
}

Herverklaring van 'n veranderlike met let, in 'n ander blok, IS toegelaat:

Voorbeeld

let x = 2;    // Allowed

{
let x = 3;    // Allowed
}

{
let x = 4;    // Allowed
}

Laat Hys

Veranderlikes wat met gedefinieer word, varword na bo gehys en kan enige tyd geïnisialiseer word.

Betekenis: Jy kan die veranderlike gebruik voordat dit verklaar word:

Voorbeeld

Dit is OK:

carName = "Volvo";
var carName;

As jy meer wil leer oor hyswerk, bestudeer die hoofstuk JavaScript -hys .

Veranderlikes wat met gedefinieer word, letword ook na die bokant van die blok gehys, maar nie geïnisialiseer nie.

Betekenis: Die gebruik van 'n letveranderlike voordat dit verklaar word, sal lei tot 'n ReferenceError:

Voorbeeld

carName = "Saab";
let carName = "Volvo";