JavaScript ES6

Wat is ECMAScript 6?

ECMAScript 6 wordt ook ES6 en ECMAScript 2015 genoemd.

Sommigen noemen het JavaScript 6.

Dit hoofdstuk introduceert enkele nieuwe functies van ES6.

  • JavaScript let
  • JavaScript const
  • Macht (**)
  • Standaard parameterwaarden
  • Array.find()
  • Array.findIndex()

Browserondersteuning voor ES6 (ECMAScript 2015)

Safari 10 en Edge 14 waren de eerste browsers die ES6 volledig ondersteunden:

Chrome 58 Edge 14 Firefox 54 Safari 10 Opera 55
Jan 2017 Aug 2016 Mar 2017 Jul 2016 Aug 2018

JavaScript let

Het let-statement maakt het mogelijk om variabelen te declareren met blokgeldigheid.

Voorbeeld

var x = 10;
// Hier is x 10
{ 
  let x = 2;
  // Hier is x 2
}
// Hier is x 10

Probeer het zelf

JavaScript const

const Een statement dat u toestaat om constante te declareren (JavaScript-variabelen met een constante waarde).

Constanten zijn vergelijkbaar met let Variabelen, maar de waarde kan niet worden gewijzigd.

Voorbeeld

var x = 10;
// Hier is x 10
{ 
  const x = 2;
  // Hier is x 2
}
// Hier is x 10

Probeer het zelf

Bekijk onze JavaScript Let / Const Meer lezen over let en const inhoud.

exponentiële operator

De vermenigvuldigingsoperator (**De eerste operand wordt opgeheven tot de macht van de tweede operand.

Voorbeeld

var x = 5;
var z = x ** 2;          // Het resultaat is 25

Probeer het zelf

x ** y het resultaat is gelijk aan Math.pow(x,y) Gelijk aan:

Voorbeeld

var x = 5;
var z = Math.pow(x,2);   // Het resultaat is 25

Probeer het zelf

Standaard parameterwaarden

ES6 Het is toegestaan dat functieparameters een standaardwaarde hebben.

Voorbeeld

function myFunction(x, y = 10) {
  // y is 10 als niet overgegeven of undefined
  return x + y;
}
myFunction(5); // Retourneert 15

Probeer het zelf

Array.find()

find() De methode retourneert de waarde van het eerste element van de array dat door de testfunctie wordt goedgekeurd.

Dit voorbeeld zoekt (retourneert) het eerste element (waarde) dat groter is dan 18:

Voorbeeld

var numbers = [4, 9, 16, 25, 29];
var first = numbers.find(myFunction);
function myFunction(value, index, array) {
  return value > 18;
}

Probeer het zelf

Let op, deze functie accepteert 3 parameters:

  • Itemwaarde
  • Itemindex
  • Het array zelf

Array.findIndex()

findIndex() De methode retourneert de index van het eerste element van de array dat door de testfunctie wordt goedgekeurd.

Dit voorbeeld bepaalt de index van het eerste element dat groter is dan 18:

Voorbeeld

var numbers = [4, 9, 16, 25, 29];
var first = numbers.findIndex(myFunction);
function myFunction(value, index, array) {
  return value > 18;
}

Probeer het zelf

Let op, deze functie accepteert 3 parameters:

  • Itemwaarde
  • Itemindex
  • Het array zelf

Nieuwe getaleigenschappen

ES6 heeft de volgende eigenschappen toegevoegd aan het Number-object:

  • EPSILON
  • MIN_SAFE_INTEGER
  • MAX_SAFE_INTEGER

Voorbeeld

var x = Number.EPSILON;

Probeer het zelf

Voorbeeld

var x = Number.MIN_SAFE_INTEGER;

Probeer het zelf

Voorbeeld

var x = Number.MAX_SAFE_INTEGER;

Probeer het zelf

Nieuwe getalmethoden

ES6 heeft ook 2 nieuwe methoden toegevoegd aan het Number-object:

  • Number.isInteger()
  • Number.isSafeInteger()

Number.isInteger() Methode

als het parameter een integer is, dan Number.isInteger() de methode true.

Voorbeeld

Number.isInteger(10);        // Retourne true
Number.isInteger(10.5);      // Retourne false

Probeer het zelf

Number.isSafeInteger() Methode

Een veiligheidsgetal is een integer dat kan worden weergegeven als een dubbele precisie.

als het parameter een veiligheidsgetal is, dan Number.isSafeInteger() de methode true.

Voorbeeld

Number.isSafeInteger(10);    // Retourne true
Number.isSafeInteger(12345678901234567890);  // Retourne false

Probeer het zelf

Een veiligheidsgetal is een integer tussen -(253 - 1) en +(253 - 1).

Dit is veilig: 9007199254740991. Dit is onveilig: 9007199254740992.

Nieuwe globale methode

ES6 heeft ook 2 nieuwe globale getalmethoden toegevoegd:

  • isFinite()
  • isNaN()

isFinite() Methode

als het parameter is Infinity of NaNis dan isFinite() De methode retourne false.

andersom retourne true:

Voorbeeld

isFinite(10/0);       // Retourne false
isFinite(10/1);       // Retourne true

Probeer het zelf

isNaN() Methode

als het argument is NaNis dan isNaN() de methode true. Anders retourneert false:

Voorbeeld

isNaN("Hello");       // Retourneert true

Probeer het zelf

Arrow Function (Arrow Function)

arrow functies laten een korte syntaxis gebruiken om functieexpressies te schrijven.

u hoeft niet function sleutelwoorden,return sleutelwoorden enaccolades.

Voorbeeld

// ES5
var x = function(x, y) {
   return x * y;
}
// ES6
const x = (x, y) => x * y;

Probeer het zelf

arrow functies hebben geen eigen this. Ze zijn niet geschikt voorobjectmethoden.

arrow functies worden niet geüpgraded. Ze moeten worden gebruiktvoorvoor definities.

gebruikt const in vergelijking met var veiligere, omdat functieexpressies altijd een constante waarde zijn.

Als de functie een enkele statement is, kan deze worden weggelaten return Sleutelwoorden en accolades. Daarom kan het een goede gewoonte zijn om ze te behouden:

Voorbeeld

const x = (x, y) => { return x * y };

Probeer het zelf