Содержание
- 2. ES6 let&const Деструктуризация (массивов и объектов) …Spread-оператор Стрелочные функции Шаблонные строки ООП. Классы. Наследование.
- 3. Классы
- 4. Объявление класса class Название [extends Родитель] { constructor методы }
- 5. Объявление класса class Polygon { constructor(height, width) { this.height = height; this.width = width; } }
- 6. Выражение класса //безымянный var Polygon = class { constructor(height, width) { this.height = height; this.width =
- 7. Создание объекта и прототип Constructor запускается при создании new Object, остальные методы записываются в Object.prototype class
- 8. Создание объекта и прототип function User(name) { this.name = name; } User.prototype.sayHi = function() { console.log(this.name);
- 9. Всплытие (hoisting) Разница между объявлением функции (function declaration) и объявлением класса (class declaration) в том, что
- 10. Статические методы class Point { constructor(x, y) { this.x = x; this.y = y; } static
- 11. Геттеры, сеттеры class User { constructor(firstName, lastName) { this.firstName = firstName; this.lastName = lastName; } get
- 12. Пример class Rectangle { constructor (width, height) { this._width = width this._height = height } set
- 13. Вычисляемые имена методов class Foo() { myMethod() {} } class Foo() { ['my'+'Method']() {} } const
- 14. Наследование //Только один конструктор, прототип, базовый класс! class Child extends Parent { //TODO logic }
- 15. Пример class Point { constructor(x, y) { this.x = x; this.y = y; } toString() {
- 16. Наследование статических методов class Foo { static classMethod() { return 'hello'; } } class Bar extends
- 17. Super //Используется для вызова функций, принадлежащих //родителю объекта super([arguments]);//вызов родительского конструктора super.functionOnParent([arguments]);
- 18. Пример: вызов конструктора class Polygon { constructor(height, width) { this.height = height; this.width = width; }
- 19. Вызов метода class Foo { static classMethod() { return 'hello'; } } class Bar extends Foo
- 20. Mixins
- 21. Mixins // Абстрактные подклассы (mix-ins) — это шаблоны для классов. //У класса может быть только один
- 22. Пример class Person { ··· } const Storage = Sup => class extends Sup { save(database)
- 23. Пример let MyMixin = (superclass) => class extends superclass { test() { console.log('test from MyMixin'); }
- 24. Symbol
- 25. Тип данных Symbol Уникальный и неизменяемый тип данных, который может быть использован как идентификатор для свойств
- 26. Тип данных Symbol let isAdmin = Symbol("isAdmin"); let user = { name: "Вася", [isAdmin]: true };
- 27. Тип данных Symbol Свойство, объявленное через символ, не будет видно в for-in, Object.keys, Object.getOwnPropertyNames, также не
- 28. Тип данных Symbol let user = { name: "Вася", age: 30, [Symbol.for("isAdmin")]: true }; //в цикле
- 29. Глобальные символы Глобальный реестр символов позволяет иметь общие глобальные символы, которые можно получить из реестра по
- 30. Встроенные символы (Well-known)
- 31. Promise
- 32. Понятие промиса Объект, используемый как заглушка для результата некоего отложенного (и асинхронного) вычисления
- 33. callback hell getData(function(a){ getMoreData(a, function(b){ getMoreData(b, function(c){ getMoreData(c, function(d){ getMoreData(d, function(e){ ... }); }); }); });
- 34. Синтаксис new Promise(executor); new Promise(function(resolve, reject) { ... }); // onFulfilled – срабатывают, когда promise в
- 35. Алгоритм Код, которому надо сделать что-то асинхронно, создаёт объект promise и возвращает его Внешний код, получив
- 36. Навешивание обработчиков promise.then(onFulfilled, onRejected); //onFulfilled – функция, которая будет вызвана с результатом при resolve //onRejected –
- 37. Метод then Метод возвращает Promise и принимает два аргумента, callback-функции для случаев выполнения и отказа соответственно
- 38. Метод catch Для того, чтобы поставить обработчик только на ошибку, вместо .then(null, onRejected) можно написать .catch(onRejected)
- 39. throw в промисах Синхронный throw – то же самое, что reject let p = new Promise((resolve,
- 40. Эмуляция асинхронности let promise = new Promise((resolve, reject) => { setTimeout(() => { resolve("result"); }, 1000);
- 41. Еще пример var promise = new Promise(function(resolve, reject) { console.log('in Promise constructor function'); setTimeout(function() { console.log('in
- 42. Promise после reject/resolve – неизменны let promise = new Promise((resolve, reject) => { // через 1
- 43. Промисификация function httpGet(url) { return new Promise(function(resolve, reject) { var xhr = new XMLHttpRequest(); xhr.open('GET', url,
- 44. Метод Promise.resolve Метод возвращает Promise, выполненный с переданным значением. Если переданное значение является thenable (имеет метод
- 45. Пример 1 Promise.resolve("Success").then( function(value) { console.log(value);//"Success" }, function(value) { //не будет вызвана } );
- 46. Пример 2 var p = Promise.resolve([1,2,3]); p.then(function(v) { console.log(v[0]);//1 });
- 47. Пример 3 var original = Promise.resolve(true); console.log(original);//Promise {resolved: true} var cast = Promise.resolve(original); cast.then(function(v) { console.log(v);//true
- 48. Метод Promise.reject // Метод возвращает объект Promise, //который был отклонен по указанной причине Promise.reject(reason);
- 49. Метод Promise.all Возвращает обещание, которое выполнится тогда, когда будут выполнены все обещания, переданные в виде перечисляемого
- 50. Пример 1 var p1 = Promise.resolve(3); var p2 = 1337; var p3 = new Promise((resolve, reject)
- 51. Пример 2 var p1 = Promise.resolve(3); var p2 = Promise.reject("Promise Reject"); var p3 = new Promise((resolve,
- 52. Метод Promise.race Метод возвращает выполненое или отклоненное обещание, в зависимости от того, с каким результатом завершится
- 53. Пример 1 var p1 = new Promise(function(resolve, reject) { setTimeout(resolve, 500, "один"); }); var p2 =
- 54. Пример 2 var p1 = Promise.resolve(3); var p2 = Promise.reject("Promise Reject"); var p3 = new Promise((resolve,
- 55. Пример 3 var p3 = new Promise(function(resolve, reject) { setTimeout(resolve, 100, "три"); }); var p4 =
- 56. Пример 4 var p5 = new Promise(function(resolve, reject) { setTimeout(resolve, 500, "пять"); }); var p6 =
- 57. Цепочки промисов something(...) .then(...) .then(...) .then(...); Если очередной then вернул промис, то далее по цепочке будет
- 58. Пример 1 Promise.resolve("Success") .then(x => { console.log("THEN1", x); }) .catch(x => { console.log("CATCH1", x); }) .then(x
- 59. Пример 2 Promise.reject("Fail") .then(x => { console.log("THEN1", x); }) .catch(x => { console.log("CATCH1", x); }) .then(x
- 60. Пример 3 Promise.reject("Fail") .catch(x => { console.log("CATCH1", x); return Promise.reject("B"); }) .then(x => { console.log("THEN1", x);
- 61. Fetch API //Метод fetch: замена XMLHttpRequest let promise = fetch(url[, options]); //url – URL, на который
- 62. Свойства options
- 63. Пример 1 fetch('/article/fetch/user.json') .then(function(response) { console.log(response.headers.get('Content-Type')); //application/json; charset=utf-8 console.log(response.status);//200 return response.json(); }) .then(function(user) { console.log(user.name);//Maks })
- 65. Скачать презентацию


![Объявление класса class Название [extends Родитель] { constructor методы }](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/943191/slide-3.jpg)












![Super //Используется для вызова функций, принадлежащих //родителю объекта super([arguments]);//вызов родительского конструктора super.functionOnParent([arguments]);](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/943191/slide-16.jpg)










![Тип данных Symbol let user = { name: "Вася", age: 30, [Symbol.for("isAdmin")]:](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/943191/slide-27.jpg)

















![Пример 2 var p = Promise.resolve([1,2,3]); p.then(function(v) { console.log(v[0]);//1 });](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/943191/slide-45.jpg)














![Fetch API //Метод fetch: замена XMLHttpRequest let promise = fetch(url[, options]); //url](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/943191/slide-60.jpg)


Собираем семантику. XMind карта
Дизайн социальных сетей
Топливный калькулятор
Условный оператор в языке программирования Pascal
Тахографы. История тахографов
Виртуальное путешествие по Северной Америке
Семь кошельков. Финансовая пирамида
Облачные технологии. Виды дистанционного обучения
Циклы по переменной. Программирование на языке Python
World Wide Web (Всемирная паутина)
Bedienung des Service Tool`s für OMRON Werkzeugmagazin
Continuous Integration. Разработка программного обеспечения,
JS1 (JavaScript)
Информатика. Анаграмма
IT: gift or curse?
Графический редактор
Отправить сообщения на электронный адрес на темы Электронная почта
6. Уровни и виды тестирования-2
Правила пользования компьютерной сетью ООО Гутцайт групп
Презентация на тему Компьютер – универсальное устройство обработки информации
Enterprise software development
Использование встроенного задачника в Pascal ABC
Онлайн-кассы: практика применения
Глобальные компьютерные сети
Информационная культура. Факторы развития информационной культуры
Кабанов 111 Презентация инфа
Работа отрядов ЮИД в социальных сетях
Расчеты гидростатики судна в Solid Works и FreeShip. Лекция №6