René's URL Explorer Experiment


Title: Вычитка · Issue #288 · javascript-tutorial/ru.javascript.info · GitHub

Open Graph Title: Вычитка · Issue #288 · javascript-tutorial/ru.javascript.info

X Title: Вычитка · Issue #288 · javascript-tutorial/ru.javascript.info

Description: Перед тем, как показывать новый учебник людям, его нужно вычитать. Даже после хорошего перевода бывают предложения, написанные не совсем по-русски, непонятные объяснения и т.п. Чтобы это отловить, достаточно прочитать русский текст свежи...

Open Graph Description: Перед тем, как показывать новый учебник людям, его нужно вычитать. Даже после хорошего перевода бывают предложения, написанные не совсем по-русски, непонятные объяснения и т.п. Чтобы это отловить, ...

X Description: Перед тем, как показывать новый учебник людям, его нужно вычитать. Даже после хорошего перевода бывают предложения, написанные не совсем по-русски, непонятные объяснения и т.п. Чтобы это отловить, ...

Opengraph URL: https://github.com/javascript-tutorial/ru.javascript.info/issues/288

X: @github

direct link

Domain: github.com


Hey, it has json ld scripts:
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"Вычитка","articleBody":"Перед тем, как показывать новый учебник людям, его нужно вычитать.\r\n\r\nДаже после хорошего перевода бывают предложения, написанные не совсем по-русски, непонятные объяснения и т.п.\r\n\r\nЧтобы это отловить, достаточно прочитать русский текст свежим взглядом.\r\n\r\nМожно сделать это локально, установив сервер \u003chttps://github.com/javascript-tutorial/server\u003e.\r\n\r\nЕсли что не так - PR. Я сам помечу статью галочкой после вычитки.\r\n\r\nСпасибо!\r\n\r\n## The JavaScript language\r\n\r\n### An introduction\r\n\r\n* [x] [An Introduction to JavaScript](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/01-getting-started/1-intro) \r\n* [x] [Manuals and specifications](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/01-getting-started/2-manuals-specifications) \r\n* [x] [Code editors](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/01-getting-started/3-code-editors) \r\n* [x] [Developer console](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/01-getting-started/4-devtools) \r\n\r\n### JavaScript Fundamentals\r\n\r\n* [x] [Hello, world!](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/02-first-steps/01-hello-world) \r\n* [x] [Code structure](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/02-first-steps/02-structure) \r\n* [x] [The modern mode, \"use strict\"](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/02-first-steps/03-strict-mode) \r\n* [x] [Variables](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/02-first-steps/04-variables) \r\n* [x] [Data types](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/02-first-steps/05-types) \r\n* [x] [Type Conversions](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/02-first-steps/06-type-conversions) \r\n* [x] [Operators](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/02-first-steps/07-operators) \r\n* [x] [Comparisons](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/02-first-steps/08-comparison) \r\n* [x] [Interaction: alert, prompt, confirm](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/02-first-steps/09-alert-prompt-confirm) \r\n* [x] [Conditional operators: if, '?'](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/02-first-steps/10-ifelse) \r\n* [x] [Logical operators](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/02-first-steps/11-logical-operators) \r\n* [x] [Loops: while and for](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/02-first-steps/12-while-for) \r\n* [x] [The \"switch\" statement](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/02-first-steps/13-switch) \r\n* [x] [Functions](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/02-first-steps/14-function-basics) \r\n* [x] [Function expressions and arrows](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/02-first-steps/15-function-expressions-arrows) \r\n* [x] [JavaScript specials](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/02-first-steps/16-javascript-specials) \r\n\r\n### Code quality\r\n\r\n* [x] [Debugging in Chrome](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/03-code-quality/01-debugging-chrome) \r\n* [x] [Coding Style](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/03-code-quality/02-coding-style) \r\n* [x] [Comments](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/03-code-quality/03-comments) \r\n* [x] [Ninja code](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/03-code-quality/04-ninja-code) \r\n* [x] [Automated testing with mocha](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/03-code-quality/05-testing-mocha) \r\n* [x] [Polyfills](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/03-code-quality/06-polyfills) \r\n\r\n### Objects: the basics\r\n\r\n* [x] [Objects](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/04-object-basics/01-object) \r\n* [x] [Garbage collection](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/04-object-basics/02-garbage-collection) \r\n* [x] [Symbol type](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/04-object-basics/03-symbol) \r\n* [x] [Object methods, \"this\"](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/04-object-basics/04-object-methods) \r\n* [x] [Object to primitive conversion](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/04-object-basics/05-object-toprimitive) \r\n* [x] [Constructor, operator \"new\"](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/04-object-basics/06-constructor-new) \r\n\r\n### Data types\r\n\r\n* [x] [Methods of primitives](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/05-data-types/01-primitives-methods) \r\n* [x] [Numbers](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/05-data-types/02-number) \r\n* [x] [Strings](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/05-data-types/03-string) \r\n* [x] [Arrays](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/05-data-types/04-array) \r\n* [x] [Array methods](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/05-data-types/05-array-methods) \r\n* [x] [Iterables](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/05-data-types/06-iterable) \r\n* [x] [Map and Set](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/05-data-types/07-map-set) \r\n* [x] [WeakMap and WeakSet](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/05-data-types/08-weakmap-weakset) \r\n* [x] [Object.keys, values, entries](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/05-data-types/09-keys-values-entries) \r\n* [x] [Destructuring assignment](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/05-data-types/10-destructuring-assignment) \r\n* [x] [Date and time](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/05-data-types/11-date) \r\n* [x] [JSON methods, toJSON](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/05-data-types/12-json) \r\n\r\n### Advanced working with functions\r\n\r\n* [x] [Recursion and stack](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/06-advanced-functions/01-recursion) \r\n* [x] [Rest parameters and spread operator](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/06-advanced-functions/02-rest-parameters-spread-operator) \r\n* [x] [Closure](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/06-advanced-functions/03-closure) \r\n* [x] [The old \"var\"](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/06-advanced-functions/04-var) \r\n* [x] [Global object](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/06-advanced-functions/05-global-object) \r\n* [x] [Function object, NFE](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/06-advanced-functions/06-function-object) \r\n* [x] [The \"new Function\" syntax](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/06-advanced-functions/07-new-function) \r\n* [x] [Scheduling: setTimeout and setInterval](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/06-advanced-functions/08-settimeout-setinterval) \r\n* [x] [Decorators and forwarding, call/apply](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/06-advanced-functions/09-call-apply-decorators) \r\n* [x] [Function binding](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/06-advanced-functions/10-bind) \r\n* [x] [Arrow functions revisited](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/06-advanced-functions/12-arrow-functions) \r\n\r\n### Object properties configuration\r\n\r\n* [x] [Property flags and descriptors](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/07-object-properties/01-property-descriptors) \r\n* [x] [Property getters and setters](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/07-object-properties/02-property-accessors) \r\n\r\n### Prototypes, inheritance\r\n\r\n* [x] [Prototypal inheritance](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/08-prototypes/01-prototype-inheritance) \r\n* [x] [F.prototype](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/08-prototypes/02-function-prototype) \r\n* [x] [Native prototypes](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/08-prototypes/03-native-prototypes) \r\n* [x] [Prototype methods, objects without __proto__](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/08-prototypes/04-prototype-methods) \r\n\r\n### Classes\r\n\r\n* [x] [Class basic syntax](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/09-classes/01-class) \r\n* [x] [Class inheritance](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/09-classes/02-class-inheritance) \r\n* [x] [Static properties and methods](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/09-classes/03-static-properties-methods) \r\n* [x] [Private and protected properties and methods](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/09-classes/04-private-protected-properties-methods) \r\n* [x] [Extending built-in classes](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/09-classes/05-extend-natives) \r\n* [x] [Class checking: \"instanceof\"](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/09-classes/06-instanceof) \r\n* [x] [Mixins](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/09-classes/07-mixins) \r\n\r\n### Error handling\r\n\r\n* [x] [Error handling, \"try..catch\"](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/10-error-handling/1-try-catch) \r\n* [x] [Custom errors, extending Error](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/10-error-handling/2-custom-errors) \r\n\r\n### Promises, async/await\r\n\r\n* [x] [Introduction: callbacks](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/11-async/01-callbacks) \r\n* [x] [Promise](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/11-async/02-promise-basics) \r\n* [x] [Promises chaining](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/11-async/03-promise-chaining) \r\n* [x] [Error handling with promises](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/11-async/04-promise-error-handling) \r\n* [x] [Promise API](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/11-async/05-promise-api) \r\n* [x] [Promisification](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/11-async/06-promisify) \r\n* [x] [Microtasks](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/11-async/07-microtask-queue)\r\n* [x] [Async/await](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/11-async/08-async-await) \r\n\r\n### Generators, advanced iteration\r\n\r\n* [x] [Generators](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/12-generators-iterators/1-generators) \r\n* [x] [Async iterators and generators](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/12-generators-iterators/2-async-iterators-generators) \r\n\r\n### Modules\r\n\r\n* [x] [Modules, introduction](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/13-modules/01-modules-intro) \r\n* [x] [Export and Import](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/13-modules/02-import-export) \r\n* [x] [Dynamic imports](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/13-modules/03-modules-dynamic-imports) \r\n\r\n### Miscellaneous\r\n\r\n* [x] [Proxy and Reflect](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/99-js-misc/01-proxy) \r\n* [x] [Eval: run a code string](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/99-js-misc/02-eval)\r\n\r\n## Browser: Document, Events, Interfaces\r\n\r\n\r\n### Document\r\n\r\n* [x] [Browser environment, specs](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/1-document/01-browser-environment) \r\n* [x] [DOM tree](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/1-document/02-dom-nodes) \r\n* [x] [Walking the DOM](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/1-document/03-dom-navigation) \r\n* [x] [Searching: getElement*, querySelector*](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/1-document/04-searching-elements-dom) \r\n* [x] [Node properties: type, tag and contents](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/1-document/05-basic-dom-node-properties) \r\n* [x] [Attributes and properties](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/1-document/06-dom-attributes-and-properties) \r\n* [x] [Modifying the document](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/1-document/07-modifying-document) \r\n* [x] [Styles and classes](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/1-document/08-styles-and-classes) \r\n* [x] [Element size and scrolling](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/1-document/09-size-and-scroll) \r\n* [x] [Window sizes and scrolling](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/1-document/10-size-and-scroll-window) \r\n* [x] [Coordinates](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/1-document/11-coordinates) \r\n\r\n### Introduction to Events\r\n\r\n* [x] [Introduction to browser events](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/2-events/01-introduction-browser-events) \r\n* [x] [Bubbling and capturing](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/2-events/02-bubbling-and-capturing) \r\n* [x] [Event delegation](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/2-events/03-event-delegation) \r\n* [x] [Browser default actions](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/2-events/04-default-browser-action) \r\n* [x] [Dispatching custom events](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/2-events/05-dispatch-events) \r\n\r\n### UI Events\r\n\r\n* [x] [Mouse events basics](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/3-event-details/1-mouse-events-basics) \r\n* [x] [Moving: mouseover/out, mouseenter/leave](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/3-event-details/3-mousemove-mouseover-mouseout-mouseenter-mouseleave) \r\n* [x] [Drag'n'Drop with mouse events](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/3-event-details/4-mouse-drag-and-drop) \r\n* [x] [Keyboard: keydown and keyup](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/3-event-details/5-keyboard-events) \r\n* [x] [Scrolling](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/3-event-details/8-onscroll) \r\n\r\n### Forms, controls\r\n\r\n* [x] [Form properties and methods](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/4-forms-controls/1-form-elements) \r\n* [ ] [Focusing: focus/blur](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/4-forms-controls/2-focus-blur) \r\n* [ ] [Events: change, input, cut, copy, paste](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/4-forms-controls/3-events-change-input) \r\n* [ ] [Forms: event and method submit](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/4-forms-controls/4-forms-submit)\r\n\r\n### Document and resource loading\r\n\r\n* [ ] [Page: DOMContentLoaded, load, beforeunload, unload](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/5-loading/01-onload-ondomcontentloaded) \r\n* [ ] [Scripts: async, defer](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/5-loading/02-script-async-defer) \r\n* [ ] [Resource loading: onload and onerror](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/5-loading/03-onload-onerror) \r\n\r\n### Miscellaneous\r\n\r\n* [x] [Mutation observer](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/99-ui-misc/01-mutation-observer) \r\n* [ ] [Selection and Range](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/99-ui-misc/02-selection-range)\r\n* [x] [Event loop: microtasks and macrotasks](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/99-ui-misc/03-event-loop)\r\n\r\n## Frames and windows\r\n\r\n* [ ] [Popups and window methods](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/3-frames-and-windows/01-popup-windows) \r\n* [ ] [Cross-window communication](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/3-frames-and-windows/03-cross-window-communication) \r\n* [ ] [The clickjacking attack](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/3-frames-and-windows/06-clickjacking) \r\n\r\n## Binary data, files\r\n\r\n* [ ] [ArrayBuffer, binary arrays](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/4-binary/01-arraybuffer-binary-arrays) \r\n* [x] [TextDecoder and TextEncoder](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/4-binary/02-text-decoder) \r\n* [ ] [Blob](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/4-binary/03-blob) \r\n* [ ] [File and FileReader](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/4-binary/04-file) \r\n\r\n## Network requests\r\n\r\n* [x] [Fetch](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/5-network/01-fetch)\r\n* [x] [FormData](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/5-network/02-formdata)\r\n* [x] [Fetch: Download progress](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/5-network/03-fetch-progress) \r\n* [x] [Fetch: Abort](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/5-network/04-fetch-abort) \r\n* [x] [Fetch: Cross-Origin Requests](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/5-network/05-fetch-crossorigin) \r\n* [x] [Fetch API](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/5-network/06-fetch-api) \r\n* [x] [URL objects](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/5-network/07-url) \r\n* [x] [XMLHttpRequest](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/5-network/08-xmlhttprequest) \r\n* [x] [Resumable file upload](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/5-network/09-resume-upload)\r\n* [x] [Long polling](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/5-network/10-long-polling)\r\n* [x] [WebSocket](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/5-network/11-websocket) \r\n* [ ] [Server Sent Events](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/5-network/12-server-sent-events)\r\n\r\n## Storing data in the browser\r\n\r\n* [ ] [Cookies, document.cookie](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/6-data-storage/01-cookie) \r\n* [ ] [LocalStorage, sessionStorage](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/6-data-storage/02-localstorage) \r\n* [ ] [IndexedDB](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/6-data-storage/03-indexeddb) \r\n\r\n## Animation\r\n\r\n* [ ] [Bezier curve](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/7-animation/1-bezier-curve) \r\n* [ ] [CSS-animations](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/7-animation/2-css-animations) \r\n* [ ] [JavaScript animations](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/7-animation/3-js-animation) \r\n\r\n## Web components\r\n\r\n* [ ] [From the orbital height](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/8-web-components/1-webcomponents-intro) \r\n* [ ] [Custom elements](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/8-web-components/2-custom-elements) \r\n* [ ] [Shadow DOM](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/8-web-components/3-shadow-dom) and events \r\n* [ ] [Template element](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/8-web-components/4-template-element) \r\n* [ ] [Shadow DOM slots, composition](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/8-web-components/5-slots-composition) \r\n* [ ] [Shadow DOM styling](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/8-web-components/6-shadow-dom-style) \r\n* [ ] [Shadow DOM and events](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/8-web-components/7-shadow-dom-events) \r\n\r\n## Regular expressions\r\n\r\n* [x] [Patterns and flags](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/9-regular-expressions/01-regexp-introduction) \r\n* [x] [Methods of RegExp and String](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/9-regular-expressions/02-regexp-methods) \r\n* [x] [Character classes](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/9-regular-expressions/03-regexp-character-classes) \r\n* [x] [Escaping, special characters](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/9-regular-expressions/04-regexp-escaping) \r\n* [x] [Sets and ranges [...]](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/9-regular-expressions/05-regexp-character-sets-and-ranges) \r\n* [x] [Quantifiers +, *, ? and {n}](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/9-regular-expressions/07-regexp-quantifiers) \r\n* [x] [Greedy and lazy quantifiers](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/9-regular-expressions/08-regexp-greedy-and-lazy) \r\n* [x] [Capturing groups](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/9-regular-expressions/09-regexp-groups) \r\n* [x] [Backreferences in pattern: \\n and \\k](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/9-regular-expressions/10-regexp-backreferences) \r\n* [x] [Alternation (OR) |](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/9-regular-expressions/11-regexp-alternation) \r\n* [x] [String start ^ and finish $](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/9-regular-expressions/12-regexp-anchors) \r\n* [x] [Multiline mode, flag \"m\"](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/9-regular-expressions/13-regexp-multiline-mode) \r\n* [x] [Lookahead and lookbehind](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/9-regular-expressions/14-regexp-lookahead-lookbehind) \r\n* [x] [Infinite backtracking problem](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/9-regular-expressions/15-regexp-infinite-backtracking-problem) \r\n* [x] [Unicode: flag \"u\"](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/9-regular-expressions/20-regexp-unicode) \r\n* [x] [Unicode character properties \\p](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/9-regular-expressions/21-regexp-unicode-properties) \r\n* [x] [Sticky flag \"y\", searching at position](https://github.com/javascript-tutorial/ru.javascript.info/blob/master/9-regular-expressions/22-regexp-sticky) \r\n","author":{"url":"https://github.com/iliakan","@type":"Person","name":"iliakan"},"datePublished":"2019-07-06T09:09:58.000Z","interactionStatistic":{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":25},"url":"https://github.com/288/ru.javascript.info/issues/288"}

route-pattern/_view_fragments/issues/show/:user_id/:repository/:id/issue_layout(.:format)
route-controllervoltron_issues_fragments
route-actionissue_layout
fetch-noncev2:06cd6c55-46d3-c676-8c08-479437312456
current-catalog-service-hash81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114
request-id94C6:A2119:274A07C:35AB70A:69709805
html-safe-nonce827bfddcd2998e54569129884267d232a1853c180f303eff05e9bb9283a35ca0
visitor-payloadeyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiI5NEM2OkEyMTE5OjI3NEEwN0M6MzVBQjcwQTo2OTcwOTgwNSIsInZpc2l0b3JfaWQiOiIzNDk1NDUyODA5MTMxNzU5NjIxIiwicmVnaW9uX2VkZ2UiOiJpYWQiLCJyZWdpb25fcmVuZGVyIjoiaWFkIn0=
visitor-hmac212e62605e7478086586254157fbaa6bf2be6264d5c8ed2e4443c0f518a7059a
hovercard-subject-tagissue:464834928
github-keyboard-shortcutsrepository,issues,copilot
google-site-verificationApib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I
octolytics-urlhttps://collector.github.com/github/collect
analytics-location///voltron/issues_fragments/issue_layout
fb:app_id1401488693436528
apple-itunes-appapp-id=1477376905, app-argument=https://github.com/_view_fragments/issues/show/javascript-tutorial/ru.javascript.info/288/issue_layout
twitter:imagehttps://opengraph.githubassets.com/dc550a00a61a2f059079ee8b6247bad6e72d5561e3cf8cdc32f4d4f1f8d05d35/javascript-tutorial/ru.javascript.info/issues/288
twitter:cardsummary_large_image
og:imagehttps://opengraph.githubassets.com/dc550a00a61a2f059079ee8b6247bad6e72d5561e3cf8cdc32f4d4f1f8d05d35/javascript-tutorial/ru.javascript.info/issues/288
og:image:altПеред тем, как показывать новый учебник людям, его нужно вычитать. Даже после хорошего перевода бывают предложения, написанные не совсем по-русски, непонятные объяснения и т.п. Чтобы это отловить, ...
og:image:width1200
og:image:height600
og:site_nameGitHub
og:typeobject
og:author:usernameiliakan
hostnamegithub.com
expected-hostnamegithub.com
None9920a62ba22d06470388e2904804fb7e5ec51c9e35f81784e9191394c74b2bd2
turbo-cache-controlno-preview
go-importgithub.com/javascript-tutorial/ru.javascript.info git https://github.com/javascript-tutorial/ru.javascript.info.git
octolytics-dimension-user_id49552305
octolytics-dimension-user_loginjavascript-tutorial
octolytics-dimension-repository_id160851084
octolytics-dimension-repository_nwojavascript-tutorial/ru.javascript.info
octolytics-dimension-repository_publictrue
octolytics-dimension-repository_is_forkfalse
octolytics-dimension-repository_network_root_id160851084
octolytics-dimension-repository_network_root_nwojavascript-tutorial/ru.javascript.info
turbo-body-classeslogged-out env-production page-responsive
disable-turbofalse
browser-stats-urlhttps://api.github.com/_private/browser/stats
browser-errors-urlhttps://api.github.com/_private/browser/errors
release7d6181066430cc06553c8396ca201e194ae33cb9
ui-targetfull
theme-color#1e2327
color-schemelight dark

Links:

Skip to contenthttps://github.com/javascript-tutorial/ru.javascript.info/issues/288#start-of-content
https://github.com/
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fjavascript-tutorial%2Fru.javascript.info%2Fissues%2F288
GitHub CopilotWrite better code with AIhttps://github.com/features/copilot
GitHub SparkBuild and deploy intelligent appshttps://github.com/features/spark
GitHub ModelsManage and compare promptshttps://github.com/features/models
MCP RegistryNewIntegrate external toolshttps://github.com/mcp
ActionsAutomate any workflowhttps://github.com/features/actions
CodespacesInstant dev environmentshttps://github.com/features/codespaces
IssuesPlan and track workhttps://github.com/features/issues
Code ReviewManage code changeshttps://github.com/features/code-review
GitHub Advanced SecurityFind and fix vulnerabilitieshttps://github.com/security/advanced-security
Code securitySecure your code as you buildhttps://github.com/security/advanced-security/code-security
Secret protectionStop leaks before they starthttps://github.com/security/advanced-security/secret-protection
Why GitHubhttps://github.com/why-github
Documentationhttps://docs.github.com
Bloghttps://github.blog
Changeloghttps://github.blog/changelog
Marketplacehttps://github.com/marketplace
View all featureshttps://github.com/features
Enterpriseshttps://github.com/enterprise
Small and medium teamshttps://github.com/team
Startupshttps://github.com/enterprise/startups
Nonprofitshttps://github.com/solutions/industry/nonprofits
App Modernizationhttps://github.com/solutions/use-case/app-modernization
DevSecOpshttps://github.com/solutions/use-case/devsecops
DevOpshttps://github.com/solutions/use-case/devops
CI/CDhttps://github.com/solutions/use-case/ci-cd
View all use caseshttps://github.com/solutions/use-case
Healthcarehttps://github.com/solutions/industry/healthcare
Financial serviceshttps://github.com/solutions/industry/financial-services
Manufacturinghttps://github.com/solutions/industry/manufacturing
Governmenthttps://github.com/solutions/industry/government
View all industrieshttps://github.com/solutions/industry
View all solutionshttps://github.com/solutions
AIhttps://github.com/resources/articles?topic=ai
Software Developmenthttps://github.com/resources/articles?topic=software-development
DevOpshttps://github.com/resources/articles?topic=devops
Securityhttps://github.com/resources/articles?topic=security
View all topicshttps://github.com/resources/articles
Customer storieshttps://github.com/customer-stories
Events & webinarshttps://github.com/resources/events
Ebooks & reportshttps://github.com/resources/whitepapers
Business insightshttps://github.com/solutions/executive-insights
GitHub Skillshttps://skills.github.com
Documentationhttps://docs.github.com
Customer supporthttps://support.github.com
Community forumhttps://github.com/orgs/community/discussions
Trust centerhttps://github.com/trust-center
Partnershttps://github.com/partners
GitHub SponsorsFund open source developershttps://github.com/sponsors
Security Labhttps://securitylab.github.com
Maintainer Communityhttps://maintainers.github.com
Acceleratorhttps://github.com/accelerator
Archive Programhttps://archiveprogram.github.com
Topicshttps://github.com/topics
Trendinghttps://github.com/trending
Collectionshttps://github.com/collections
Enterprise platformAI-powered developer platformhttps://github.com/enterprise
GitHub Advanced SecurityEnterprise-grade security featureshttps://github.com/security/advanced-security
Copilot for BusinessEnterprise-grade AI featureshttps://github.com/features/copilot/copilot-business
Premium SupportEnterprise-grade 24/7 supporthttps://github.com/premium-support
Pricinghttps://github.com/pricing
Search syntax tipshttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
documentationhttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fjavascript-tutorial%2Fru.javascript.info%2Fissues%2F288
Sign up https://github.com/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2F%3Cuser-name%3E%2F%3Crepo-name%3E%2Fvoltron%2Fissues_fragments%2Fissue_layout&source=header-repo&source_repo=javascript-tutorial%2Fru.javascript.info
Reloadhttps://github.com/javascript-tutorial/ru.javascript.info/issues/288
Reloadhttps://github.com/javascript-tutorial/ru.javascript.info/issues/288
Reloadhttps://github.com/javascript-tutorial/ru.javascript.info/issues/288
javascript-tutorial https://github.com/javascript-tutorial
ru.javascript.infohttps://github.com/javascript-tutorial/ru.javascript.info
Notifications https://github.com/login?return_to=%2Fjavascript-tutorial%2Fru.javascript.info
Fork 926 https://github.com/login?return_to=%2Fjavascript-tutorial%2Fru.javascript.info
Star 4k https://github.com/login?return_to=%2Fjavascript-tutorial%2Fru.javascript.info
Code https://github.com/javascript-tutorial/ru.javascript.info
Issues 26 https://github.com/javascript-tutorial/ru.javascript.info/issues
Pull requests 59 https://github.com/javascript-tutorial/ru.javascript.info/pulls
Actions https://github.com/javascript-tutorial/ru.javascript.info/actions
Projects 0 https://github.com/javascript-tutorial/ru.javascript.info/projects
Security Uh oh! There was an error while loading. Please reload this page. https://github.com/javascript-tutorial/ru.javascript.info/security
Please reload this pagehttps://github.com/javascript-tutorial/ru.javascript.info/issues/288
Insights https://github.com/javascript-tutorial/ru.javascript.info/pulse
Code https://github.com/javascript-tutorial/ru.javascript.info
Issues https://github.com/javascript-tutorial/ru.javascript.info/issues
Pull requests https://github.com/javascript-tutorial/ru.javascript.info/pulls
Actions https://github.com/javascript-tutorial/ru.javascript.info/actions
Projects https://github.com/javascript-tutorial/ru.javascript.info/projects
Security https://github.com/javascript-tutorial/ru.javascript.info/security
Insights https://github.com/javascript-tutorial/ru.javascript.info/pulse
New issuehttps://github.com/login?return_to=https://github.com/javascript-tutorial/ru.javascript.info/issues/288
New issuehttps://github.com/login?return_to=https://github.com/javascript-tutorial/ru.javascript.info/issues/288
Вычиткаhttps://github.com/javascript-tutorial/ru.javascript.info/issues/288#top
https://github.com/iliakan
https://github.com/iliakan
https://github.com/iliakan
iliakanhttps://github.com/iliakan
on Jul 6, 2019https://github.com/javascript-tutorial/ru.javascript.info/issues/288#issue-464834928
https://github.com/javascript-tutorial/serverhttps://github.com/javascript-tutorial/server
An Introduction to JavaScripthttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/01-getting-started/1-intro
Manuals and specificationshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/01-getting-started/2-manuals-specifications
Code editorshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/01-getting-started/3-code-editors
Developer consolehttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/01-getting-started/4-devtools
Hello, world!https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/02-first-steps/01-hello-world
Code structurehttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/02-first-steps/02-structure
The modern mode, "use strict"https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/02-first-steps/03-strict-mode
Variableshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/02-first-steps/04-variables
Data typeshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/02-first-steps/05-types
Type Conversionshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/02-first-steps/06-type-conversions
Operatorshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/02-first-steps/07-operators
Comparisonshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/02-first-steps/08-comparison
Interaction: alert, prompt, confirmhttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/02-first-steps/09-alert-prompt-confirm
Conditional operators: if, '?'https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/02-first-steps/10-ifelse
Logical operatorshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/02-first-steps/11-logical-operators
Loops: while and forhttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/02-first-steps/12-while-for
The "switch" statementhttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/02-first-steps/13-switch
Functionshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/02-first-steps/14-function-basics
Function expressions and arrowshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/02-first-steps/15-function-expressions-arrows
JavaScript specialshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/02-first-steps/16-javascript-specials
Debugging in Chromehttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/03-code-quality/01-debugging-chrome
Coding Stylehttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/03-code-quality/02-coding-style
Commentshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/03-code-quality/03-comments
Ninja codehttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/03-code-quality/04-ninja-code
Automated testing with mochahttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/03-code-quality/05-testing-mocha
Polyfillshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/03-code-quality/06-polyfills
Objectshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/04-object-basics/01-object
Garbage collectionhttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/04-object-basics/02-garbage-collection
Symbol typehttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/04-object-basics/03-symbol
Object methods, "this"https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/04-object-basics/04-object-methods
Object to primitive conversionhttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/04-object-basics/05-object-toprimitive
Constructor, operator "new"https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/04-object-basics/06-constructor-new
Methods of primitiveshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/05-data-types/01-primitives-methods
Numbershttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/05-data-types/02-number
Stringshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/05-data-types/03-string
Arrayshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/05-data-types/04-array
Array methodshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/05-data-types/05-array-methods
Iterableshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/05-data-types/06-iterable
Map and Sethttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/05-data-types/07-map-set
WeakMap and WeakSethttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/05-data-types/08-weakmap-weakset
Object.keys, values, entrieshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/05-data-types/09-keys-values-entries
Destructuring assignmenthttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/05-data-types/10-destructuring-assignment
Date and timehttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/05-data-types/11-date
JSON methods, toJSONhttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/05-data-types/12-json
Recursion and stackhttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/06-advanced-functions/01-recursion
Rest parameters and spread operatorhttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/06-advanced-functions/02-rest-parameters-spread-operator
Closurehttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/06-advanced-functions/03-closure
The old "var"https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/06-advanced-functions/04-var
Global objecthttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/06-advanced-functions/05-global-object
Function object, NFEhttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/06-advanced-functions/06-function-object
The "new Function" syntaxhttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/06-advanced-functions/07-new-function
Scheduling: setTimeout and setIntervalhttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/06-advanced-functions/08-settimeout-setinterval
Decorators and forwarding, call/applyhttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/06-advanced-functions/09-call-apply-decorators
Function bindinghttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/06-advanced-functions/10-bind
Arrow functions revisitedhttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/06-advanced-functions/12-arrow-functions
Property flags and descriptorshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/07-object-properties/01-property-descriptors
Property getters and settershttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/07-object-properties/02-property-accessors
Prototypal inheritancehttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/08-prototypes/01-prototype-inheritance
F.prototypehttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/08-prototypes/02-function-prototype
Native prototypeshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/08-prototypes/03-native-prototypes
Prototype methods, objects without protohttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/08-prototypes/04-prototype-methods
Class basic syntaxhttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/09-classes/01-class
Class inheritancehttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/09-classes/02-class-inheritance
Static properties and methodshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/09-classes/03-static-properties-methods
Private and protected properties and methodshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/09-classes/04-private-protected-properties-methods
Extending built-in classeshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/09-classes/05-extend-natives
Class checking: "instanceof"https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/09-classes/06-instanceof
Mixinshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/09-classes/07-mixins
Error handling, "try..catch"https://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/10-error-handling/1-try-catch
Custom errors, extending Errorhttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/10-error-handling/2-custom-errors
Introduction: callbackshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/11-async/01-callbacks
Promisehttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/11-async/02-promise-basics
Promises chaininghttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/11-async/03-promise-chaining
Error handling with promiseshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/11-async/04-promise-error-handling
Promise APIhttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/11-async/05-promise-api
Promisificationhttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/11-async/06-promisify
Microtaskshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/11-async/07-microtask-queue
Async/awaithttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/11-async/08-async-await
Generatorshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/12-generators-iterators/1-generators
Async iterators and generatorshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/12-generators-iterators/2-async-iterators-generators
Modules, introductionhttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/13-modules/01-modules-intro
Export and Importhttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/13-modules/02-import-export
Dynamic importshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/13-modules/03-modules-dynamic-imports
Proxy and Reflecthttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/99-js-misc/01-proxy
Eval: run a code stringhttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/1-js/99-js-misc/02-eval
Browser environment, specshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/1-document/01-browser-environment
DOM treehttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/1-document/02-dom-nodes
Walking the DOMhttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/1-document/03-dom-navigation
Searching: getElement*, querySelector*https://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/1-document/04-searching-elements-dom
Node properties: type, tag and contentshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/1-document/05-basic-dom-node-properties
Attributes and propertieshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/1-document/06-dom-attributes-and-properties
Modifying the documenthttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/1-document/07-modifying-document
Styles and classeshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/1-document/08-styles-and-classes
Element size and scrollinghttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/1-document/09-size-and-scroll
Window sizes and scrollinghttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/1-document/10-size-and-scroll-window
Coordinateshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/1-document/11-coordinates
Introduction to browser eventshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/2-events/01-introduction-browser-events
Bubbling and capturinghttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/2-events/02-bubbling-and-capturing
Event delegationhttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/2-events/03-event-delegation
Browser default actionshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/2-events/04-default-browser-action
Dispatching custom eventshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/2-events/05-dispatch-events
Mouse events basicshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/3-event-details/1-mouse-events-basics
Moving: mouseover/out, mouseenter/leavehttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/3-event-details/3-mousemove-mouseover-mouseout-mouseenter-mouseleave
Drag'n'Drop with mouse eventshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/3-event-details/4-mouse-drag-and-drop
Keyboard: keydown and keyuphttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/3-event-details/5-keyboard-events
Scrollinghttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/3-event-details/8-onscroll
Form properties and methodshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/4-forms-controls/1-form-elements
Focusing: focus/blurhttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/4-forms-controls/2-focus-blur
Events: change, input, cut, copy, pastehttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/4-forms-controls/3-events-change-input
Forms: event and method submithttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/4-forms-controls/4-forms-submit
Page: DOMContentLoaded, load, beforeunload, unloadhttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/5-loading/01-onload-ondomcontentloaded
Scripts: async, deferhttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/5-loading/02-script-async-defer
Resource loading: onload and onerrorhttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/5-loading/03-onload-onerror
Mutation observerhttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/99-ui-misc/01-mutation-observer
Selection and Rangehttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/99-ui-misc/02-selection-range
Event loop: microtasks and macrotaskshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/2-ui/99-ui-misc/03-event-loop
Popups and window methodshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/3-frames-and-windows/01-popup-windows
Cross-window communicationhttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/3-frames-and-windows/03-cross-window-communication
The clickjacking attackhttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/3-frames-and-windows/06-clickjacking
ArrayBuffer, binary arrayshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/4-binary/01-arraybuffer-binary-arrays
TextDecoder and TextEncoderhttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/4-binary/02-text-decoder
Blobhttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/4-binary/03-blob
File and FileReaderhttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/4-binary/04-file
Fetchhttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/5-network/01-fetch
FormDatahttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/5-network/02-formdata
Fetch: Download progresshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/5-network/03-fetch-progress
Fetch: Aborthttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/5-network/04-fetch-abort
Fetch: Cross-Origin Requestshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/5-network/05-fetch-crossorigin
Fetch APIhttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/5-network/06-fetch-api
URL objectshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/5-network/07-url
XMLHttpRequesthttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/5-network/08-xmlhttprequest
Resumable file uploadhttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/5-network/09-resume-upload
Long pollinghttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/5-network/10-long-polling
WebSockethttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/5-network/11-websocket
Server Sent Eventshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/5-network/12-server-sent-events
Cookies, document.cookiehttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/6-data-storage/01-cookie
LocalStorage, sessionStoragehttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/6-data-storage/02-localstorage
IndexedDBhttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/6-data-storage/03-indexeddb
Bezier curvehttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/7-animation/1-bezier-curve
CSS-animationshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/7-animation/2-css-animations
JavaScript animationshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/7-animation/3-js-animation
From the orbital heighthttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/8-web-components/1-webcomponents-intro
Custom elementshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/8-web-components/2-custom-elements
Shadow DOMhttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/8-web-components/3-shadow-dom
Template elementhttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/8-web-components/4-template-element
Shadow DOM slots, compositionhttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/8-web-components/5-slots-composition
Shadow DOM stylinghttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/8-web-components/6-shadow-dom-style
Shadow DOM and eventshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/8-web-components/7-shadow-dom-events
Patterns and flagshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/9-regular-expressions/01-regexp-introduction
Methods of RegExp and Stringhttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/9-regular-expressions/02-regexp-methods
Character classeshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/9-regular-expressions/03-regexp-character-classes
Escaping, special charactershttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/9-regular-expressions/04-regexp-escaping
Sets and ranges [...]https://github.com/javascript-tutorial/ru.javascript.info/blob/master/9-regular-expressions/05-regexp-character-sets-and-ranges
Quantifiers +, *, ? and {n}https://github.com/javascript-tutorial/ru.javascript.info/blob/master/9-regular-expressions/07-regexp-quantifiers
Greedy and lazy quantifiershttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/9-regular-expressions/08-regexp-greedy-and-lazy
Capturing groupshttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/9-regular-expressions/09-regexp-groups
Backreferences in pattern: \n and \khttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/9-regular-expressions/10-regexp-backreferences
Alternation (OR) |https://github.com/javascript-tutorial/ru.javascript.info/blob/master/9-regular-expressions/11-regexp-alternation
String start ^ and finish $https://github.com/javascript-tutorial/ru.javascript.info/blob/master/9-regular-expressions/12-regexp-anchors
Multiline mode, flag "m"https://github.com/javascript-tutorial/ru.javascript.info/blob/master/9-regular-expressions/13-regexp-multiline-mode
Lookahead and lookbehindhttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/9-regular-expressions/14-regexp-lookahead-lookbehind
Infinite backtracking problemhttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/9-regular-expressions/15-regexp-infinite-backtracking-problem
Unicode: flag "u"https://github.com/javascript-tutorial/ru.javascript.info/blob/master/9-regular-expressions/20-regexp-unicode
Unicode character properties \phttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/9-regular-expressions/21-regexp-unicode-properties
Sticky flag "y", searching at positionhttps://github.com/javascript-tutorial/ru.javascript.info/blob/master/9-regular-expressions/22-regexp-sticky
iliakanhttps://github.com/iliakan
https://github.com
Termshttps://docs.github.com/site-policy/github-terms/github-terms-of-service
Privacyhttps://docs.github.com/site-policy/privacy-policies/github-privacy-statement
Securityhttps://github.com/security
Statushttps://www.githubstatus.com/
Communityhttps://github.community/
Docshttps://docs.github.com/
Contacthttps://support.github.com?tags=dotcom-footer

Viewport: width=device-width


URLs of crawlers that visited me.