Author: MDBootstrap
What is ECMAScript 6 (ES6)?
ECMAScript 6 is also known as ES6 and ECMAScript 2015.
Some people calls it JavaScript 6.
JavaScript let
The let
statement allows you to declare a variable with
block scope.
var x = 10;
// Here x is 10
{
let x = 2;
// Here x is 2
}
// Here x is 10
Note: You can find a detailed explanation about let
in Let variable
lesson
JavaScript const
The const
statement allows you to declare a constant (a
JavaScript variable with a constant value).
Constants are similar to let variables, except that the value cannot be changed.
var x = 10;
// Here x is 10
{
const x = 2;
// Here x is 2
}
// Here x is 10
Note: You can find a detailed explanation about const
in Const variable
lesson
Exponentiation Operator
The exponentiation operator (**
) raises the first operand
to the power of the second operand.
var x = 5;
var z = x ** 2; // result is 25
x ** y
produces the same result as Math.pow(x,y)
:
var x = 5;
var z = Math.pow(x,2); // result is 25
Default Parameter Values
ES6 allows function parameters to have default values.
function myFunction(x, y = 10) {
// y is 10 if not passed or undefined
return x + y;
}
myFunction(5); // will return 15
Array.find()
The find()
method returns the value of the first array element that passes
a
test function.
This example finds (returns the value of ) the first element that is larger than 18:
var numbers = [4, 9, 16, 25, 29];
var first = numbers.find(myFunction);
function myFunction(value, index, array) {
return value > 18;
}
Note that the function takes 3 arguments:
- The item value
- The item index
- The array itself
Array.findIndex()
The findIndex()
method returns the index of the first array element that
passes a test function.
This example finds the index of the first element that is larger than 18:
var numbers = [4, 9, 16, 25, 29];
var first = numbers.findIndex(myFunction);
function myFunction(value, index, array) {
return value > 18;
}
Note that the function takes 3 arguments:
- The item value
- The item index
- The array itself
The Number.isInteger() Method
The Number.isInteger()
method returns true
if
the argument is an integer.
Number.isInteger(10); // returns true
Number.isInteger(10.5); // returns false
The Number.isSafeInteger() Method
A safe integer is an integer that can be exactly represented as a double precision number.
The Number.isSafeInteger()
method returns true
if the argument is a safe integer.
Number.isSafeInteger(10); // returns true
Number.isSafeInteger(12345678901234567890); // returns false
Safe integers are all integers from -(253 - 1) to +(253 -
1).
This is safe: 9007199254740991. This is not safe: 9007199254740992.
Arrow Functions
Arrow functions allows a short syntax for writing function expressions.
You don't need the function
keyword, the return
keyword, and the
curly brackets.
// ES5
var x = function(x, y) {
return x * y;
}
// ES6
const x = (x, y) => x * y;
Arrow functions do not have their own this
.
They are not well suited for defining object methods.
Arrow functions are not hoisted. They must be defined before they are used.
Using const
is safer than using var
, because a function expression is
always constant value.
You can only omit the return
keyword and the curly brackets if the
function is a single statement.
Because of this, it might be a good habit to always keep them:
const x = (x, y) => { return x * y };
Previous lesson Next lesson
Spread the word: