JavaScript ES6
- Предыдущая страница JS 2009 (ES5)
- Следующая страница JS 2016
Что такое ECMAScript 6?
ECMAScript 6 также известен как ES6 и ECMAScript 2015.
Некоторые называют его JavaScript 6.
Эта глава знакомит с некоторыми новыми функциями ES6.
- JavaScript let
- JavaScript const
- Мощь (**)
- Значения по умолчанию
- Array.find()
- Array.findIndex()
Поддержка браузеров для ES6 (ECMAScript 2015)
Safari 10 и Edge 14 были первыми браузерами, которые полностью поддерживали ES6:
Chrome 58 | Edge 14 | Firefox 54 | Safari 10 | Opera 55 |
Jan 2017 | Aug 2016 | Mar 2017 | Jul 2016 | Aug 2018 |
JavaScript let
Оператор let позволяет вам использовать блоковую область действия для объявления переменных.
Пример
var x = 10; // Здесь x equals 10 { let x = 2; // Здесь x equals 2 } // Здесь x equals 10
JavaScript const
const
Оператор позволяет вам объявлять константы (JavaScript переменные с константными значениями).
Константы подобны let
Переменные, но их значение нельзя изменить.
Пример
var x = 10; // Здесь x equals 10 { const x = 2; // Здесь x equals 2 } // Здесь x equals 10
Наших JavaScript Let / Const Прочитайте больше о let
и const
содержание.
Оператор степени
Оператор взятия степени (**
Поднимает первый операнд в степень второго операнда.
Пример
var x = 5; var z = x ** 2; // результат 25
x ** y
результат Math.pow(x,y)
Точно так же:
Пример
var x = 5; var z = Math.pow(x,2); // результат 25
Значения по умолчанию
ES6
Функция параметров может иметь значения по умолчанию.
Пример
function myFunction(x, y = 10) { // y equals 10 if not passed or undefined return x + y; } myFunction(5); // вернет 15
Array.find()
find()
Метод возвращает значение первого массивного элемента, удовлетворяющего тестовой функции.
Этот пример ищет (возвращает) первый элемент (значение), которое больше 18:
Пример
var numbers = [4, 9, 16, 25, 29]; var first = numbers.find(myFunction); function myFunction(value, index, array) { return value > 18; }
Обратите внимание, что эта функция принимает 3 параметра:
- Значение элемента
- Индекс элемента
- Сам массив
Array.findIndex()
findIndex()
Метод возвращает индекс первого массивного элемента, удовлетворяющего тестовой функции.
Этот пример определяет индекс первого элемента, превышающего 18:
Пример
var numbers = [4, 9, 16, 25, 29]; var first = numbers.findIndex(myFunction); function myFunction(value, index, array) { return value > 18; }
Обратите внимание, что эта функция принимает 3 параметра:
- Значение элемента
- Индекс элемента
- Сам массив
Новые числовые свойства
ES6 добавил следующие свойства к объекту Number:
- EPSILON
- MIN_SAFE_INTEGER
- MAX_SAFE_INTEGER
Пример
var x = Number.EPSILON;
Пример
var x = Number.MIN_SAFE_INTEGER;
Пример
var x = Number.MAX_SAFE_INTEGER;
Новые числовые методы
ES6 добавил 2 новых метода к объекту Number:
- Number.isInteger()
- Number.isSafeInteger()
Метод Number.isInteger()
Если параметр является целым числом, то Number.isInteger()
метод возвращает true
.
Пример
Number.isInteger(10); // Возвращает true Number.isInteger(10.5); // Возвращает false
Метод Number.isSafeInteger()
Безопасные целые числа можно точно представить как целые числа с двойной точностью.
Если параметр является безопасным целым числом, то Number.isSafeInteger()
метод возвращает true
.
Пример
Number.isSafeInteger(10); // Возвращает true Number.isSafeInteger(12345678901234567890); // Возвращает false
Безопасные целые числа представляют собой все целые числа от -(253 - 1) до +(253 - 1).
Это безопасно: 9007199254740991. Это не безопасно: 9007199254740992.
Новые глобальные методы
ES6 добавил 2 новых глобальных числовых метода:
- isFinite()
- isNaN()
Метод isFinite()
Если параметр равен Infinity
или NaN
если результат isFinite()
Метод возвращает false.
В противном случае возвращает true:
Пример
isFinite(10/0); // Возвращает false isFinite(10/1); // Возвращает true
Метод isNaN()
если аргумент является NaN
если результат isNaN()
метод возвращает true
. В противном случае возвращает false
:
Пример
isNaN("Hello"); // возвращает true
箭очные функции (Arrow Function)
箭очные функции позволяют использовать краткую синтаксис для записи выражений функций.
вам не нужно function
ключевые слова,return
ключевые слова ифигурные скобки.
Пример
// ES5 var x = function(x, y) { return x * y; } // ES6 const x = (x, y) => x * y;
箭очные функции не имеют своего this
. Они не подходят для определенияметоды объекта.
их необходимо использовать箭очные функции не поднимаются.для определения.
использовать const
чем использование var
более безопасно, так как функция выражения всегда является константой.
Если функция является единственной инструкцией, то её можно опустить return
Ключевые слова и фигурные скобки. Поэтому их сохранение может быть хорошей привычкой:
Пример
const x = (x, y) => { return x * y };
- Предыдущая страница JS 2009 (ES5)
- Следующая страница JS 2016