Description
Maintainer List
For New Translators
Please read this first (click to open)
To translate an article:
- Check that no one else has claimed your article in the checklist below.
- Comment below with the title of the article that you would like to translate, exactly as listed, e.g.
An Introduction to JavaScript
.- Please take only one article at a time.
- Fork this repo, translate the article in your fork and submit a pull request!
- The pull request title should be same as the article, e.g.
An Introduction to JavaScript
(just like comment)
- The pull request title should be same as the article, e.g.
Please be prompt with your translations! If you find that you can't commit any more, let maintainers know so they can assign the page to someone else.
For Maintainers
Click to open
We recommend that a translation has 2 reviews to be merged.
Please let others know what you do, on community boards and chats, invite them to join. Translations become better if more people see them.
Translations are tracked below, like this:
Our helpful bot watches comments and adds the translator nick and PR id, marks completed, when PR is merged. You can read the details at https://javascript.info/translate/bot.
If something doesn't work right, please contact @iliakan.
Team translation
More details about team translation: https://javascript.info/translate/bot.
Only maintainers can check/uncheck items below. If you're not, please write in a comment what you take to translate, the title, exactly as in the list.
The JavaScript language
An introduction
- An Introduction to JavaScript (@tarasyyyk) 9cc52dd
- Manuals and specifications (@tarasyyyk) 3fe9f42
- Code editors (@tarasyyyk) 8133018, e6dd629
- Developer console (@tarasyyyk) afb020f
JavaScript Fundamentals
- Hello, world! (@dDenysS) Hello, world! #3
- Code structure (@tarasyyyk) Code structure #25
- The modern mode, "use strict" (@tarasyyyk) Strict mode #5
- Variables (@tarasyyyk) Variables #14
- Data types (@Zim123) Data types #12
- Interaction: alert, prompt, confirm (@Zim123) Interaction: alert, prompt, confirm #23
- Type Conversions (@Zim123) Type Conversions #15
- Basic operators, maths (@Zim123) Operators #19
- Comparisons (@tarasyyyk) Comparison #18
- Conditional branching: if, '?' (@Zim123) Conditional operators: if, '?' #28
- Logical operators (@Zim123) Logical operators #34
- Nullish coalescing operator '??' (@MykolaSopiha) Nullish coalescing operator '??' #220
- Loops: while and for (@tarasyyyk, @dDenysS) Loops: while, for #77, Loops #78, Loops tasks #190
- The "switch" statement (@lobanov-oleh) Switch #42
- Functions (@hypeofpipe, @tarasyyyk) Functions #127, Functions (tasks, solutions) #144
- Function expressions (@Tuoris) Function expression and arrows #48
- Arrow functions, the basics (@Tuoris) Function expression and arrows #48
- JavaScript specials (@tarasyyyk) JavaScript Specials #40
Code quality
- Debugging in the browser (@tarasyyyk) Debugging in Chrome #54
- Coding Style (@alexgalkin) Coding style #59
- Comments (@alexgalkin) Comments #60
- Ninja code (@alexgalkin) Ninja Code #61
- Automated testing with Mocha (@alexgalkin) Automated testing with Mocha #63
- Polyfills and transpilers (@alexgalkin, @tarasyyyk) Polyfills #75, Transpilers #195
Objects: the basics
- Objects (@Regnised) Objects #184
- Object references and copying (@dolgachio) Object copy #142
- Garbage collection (@dolgachio) Garbage Collection #197
- Object methods, "this" (@MykolaSopiha) Object methods, "this" #151
- Constructor, operator "new" (@hordiienko-tatiana) Constructor, operator "new" #172
- Optional chaining '?.' (@didostap) Optional chaining ?. #146
- Symbol type (@Tarkeasy) Symbol type #149
- Object to primitive conversion (@MykolaSopiha) Object to primitive conversion #154
Data types
- Methods of primitives (@stevermeister) Methods of primitives #10
- Numbers (@alexandrtovmach) Numbers #62
- Strings (@gingano) Strings #230
- Arrays (@ArtemZununov) Arrays #115
- Array methods (@Regnised) Array methods #192
- Iterables (@MykolaSopiha) Iterables #196
- Map and Set (@Regnised) Map and Set translation #148
- WeakMap and WeakSet (@MykolaSopiha) WeakMap and WeakSet #162
- Object.keys, values, entries (@chizzzy) Object.keys, values, entries #155
- Destructuring assignment (@hordiienko-tatiana) Destructuring assignment #222
- Date and time (@MykolaSopiha) Date and Time #168
- JSON methods, toJSON (@MykolaSopiha) JSON methods, toJSON #186
Advanced working with functions
- Recursion and stack (@MykolaSopiha) Recursion and stack #201
- Rest parameters and spread syntax (@MariaTar) Rest parameters and spread syntax #188
- Variable scope, closure (@dolgachio) Variable scope, closure #219
- The old "var" (@chizzzy) The old "var" #171
- Global object (@Regnised) Global object #166
- Function object, NFE (@MykolaSopiha) Function object, NFE #198
- The "new Function" syntax (@MykolaSopiha) The "new Function" syntax #199
- Scheduling: setTimeout and setInterval (@hordiienko-tatiana) Scheduling: setTimeout and setInterval #187
- Decorators and forwarding, call/apply (@MykolaSopiha) Decorators and forwarding, call/apply #200
- Function binding (@Vanchurick) Function binding #203
- Arrow functions revisited (@chizzzy) Arrow functions revisited #178
Object properties configuration
- Property flags and descriptors (@MykolaSopiha) Property descriptors #204
- Property getters and setters (@MykolaSopiha) Property getters and setters #206
Prototypes, inheritance
- Prototypal inheritance (@VolodymyrSSS) Prototypal inheritance #167
- F.prototype (@VolodymyrSSS) F.prototype #194
- Native prototypes (@MykolaSopiha) Native Prototypes #250
- Prototype methods, objects without proto (@Vanchurick) Prototype methods, objects without proto #215
Classes
- Class basic syntax (@MykolaSopiha) Class basic syntax #207
- Class inheritance (@MykolaSopiha) Class inheritance #218
- Static properties and methods (@Nordtonito) Static properties and methods #212
- Private and protected properties and methods (@MykolaSopiha) Private and protected #252
- Extending built-in classes (@Nordtonito) Extending built-in classes #214
- Class checking: "instanceof" (@dolgachio) Class checking: "instanceof" #227
- Mixins (@MykolaSopiha) Mixins #241
Error handling
- Error handling, "try...catch" (@Purusah) Error handling, "try...catch" #225
- Custom errors, extending Error (@dolgachio) Custom errors, extending Error #251
Promises, async/await
- Introduction: callbacks (@Nordtonito) Introduction: callbacks #253
- Promise (@didostap) Promise #160
- Promises chaining (@hordiienko-tatiana) Promises chaining #259
- Error handling with promises (@AntonBurchak) Error handling with promises #231
- Promise API (@Nordtonito) Promise API #217
- Promisification (@Regnised) Promisification #229
- Microtasks (@Nordtonito) Microtasks #223
- Async/await (@Nordtonito) Async/await #221
Generators, advanced iteration
- Generators (@Nordtonito) Generators #224
- Async iteration and generators (@Nordtonito) Async iteration and generators #236
Modules
- Modules, introduction (@Regnised) Modules, introduction #239
- Export and Import (@Purusah) Export and Import #242
- Dynamic imports (@AntonBurchak) Dynamic imports #234
Miscellaneous
- Proxy and Reflect (@Nordtonito) Proxy and Reflect #245
- Eval: run a code string (@Regnised) Eval: run a code string #240
- Currying (@AntonBurchak) Currying #257
- Reference Type (@MykolaSopiha) Reference Type #254
- BigInt (@gingano) BigInt #238
- Unicode, String internals (@vitaliimalynka) Unicode, String internals #509
- WeakRef and FinalizationRegistry (@WOLFRIEND) WeakRef and FinalizationRegistry #576
Browser: Document, Events, Interfaces
Document
- Browser environment, specs (@MykolaSopiha) Browser environment, specs #243
- DOM tree (@MykolaSopiha) DOM nodes #249
- Walking the DOM (@dolgachio) DOM navigation #328
- Searching: getElement*, querySelector* (@Nordtonito) Searching: getElement*, querySelector* #246
- Node properties: type, tag and contents (@MykolaSopiha) Basic DOM Node Properties #260
- Attributes and properties (@MykolaSopiha) Attributes and properties #265
- Modifying the document (@malechaneit) Modifying the document #299
- Styles and classes (@AdriandeCita) Styles and classes #296
- Element size and scrolling (@80001) Element size and scrolling #401
- Window sizes and scrolling (@jeneg) Window sizes and scrolling #279
- Coordinates (@jeneg) Coordinates #305
Introduction to Events
- Introduction to browser events (@Regnised) Introduction to browser events #292
- Bubbling and capturing (@Neschadin) Bubbling and capturing #495
- Event delegation (@OlhaBrozhenets) Event delegation #262
- Browser default actions (@OlhaBrozhenets) Browser default actions #264
- Dispatching custom events (@OlhaBrozhenets) Dispatching custom events #268
UI Events
- Mouse events (@OlhaBrozhenets) Mouse events #274
- Moving the mouse: mouseover/out, mouseenter/leave (@dolgachio) Moving the mouse #620
- Drag'n'Drop with mouse events (@AntonBurchak) Drag'n'Drop with mouse events #322
- Pointer events (@OlhaBrozhenets) Pointer events #291
- Keyboard: keydown and keyup (@OlhaBrozhenets) Keyboard: keydown and keyup #293
- Scrolling (@OlhaBrozhenets) Scrolling #295
Forms, controls
- Form properties and methods (@jeneg) Form properties and methods #308
- Focusing: focus/blur (@malechaneit) Focusing: focus/blur #314
- Events: change, input, cut, copy, paste (@OlhaBrozhenets) Events: change, input, cut, copy, paste #297
- Forms: event and method submit (@OlhaBrozhenets) Forms: event and method submit #298
Document and resource loading
- Page: DOMContentLoaded, load, beforeunload, unload (@OlhaBrozhenets) Page loads() #303
- Scripts: async, defer (@Nordtonito) Scripts: async, defer #273
- Resource loading: onload and onerror (@OlhaBrozhenets) Resource loading: onload and onerror #304
Miscellaneous
- Mutation observer (@AdriandeCita) Mutation observer #372
- Selection and Range (@dolgachio) Selection and Range #606
- Event loop: microtasks and macrotasks (@georgyna) Event loop: microtasks and macrotasks #513
Frames and windows
- Popups and window methods (@OlhaBrozhenets) Popups and window methods #307
- Cross-window communication (@OlhaBrozhenets) Cross-window communication #316
- The clickjacking attack (@astropsy999) The clickjacking attack, SSE, CSS-animations #343
Binary data, files
- ArrayBuffer, binary arrays (@Purusah) ArrayBuffer, binary arrays #248
- TextDecoder and TextEncoder (@Purusah) TextDecoder and TextEncoder #256
- Blob (@Purusah) Blob #270
- File and FileReader (@Purusah) File and FileReader #301
Network requests
- Fetch (@kopijka) Fetch #491
- FormData (@Regnised) FormData #247
- Fetch: Download progress (@Nordtonito) Fetch: Download progress #294
- Fetch: Abort (@Nordtonito) Fetch: Abort #306
- Fetch: Cross-Origin Requests (@Nordtonito) Fetch: Cross-Origin Requests #382
- Fetch API (@Nordtonito) Fetch API #430
- URL objects (@Purusah) URL objects #323
- XMLHttpRequest (@jeneg) XMLHttpRequest #310
- Resumable file upload (@jeneg) Resumable file upload #312
- Long polling (@jeneg) Long polling #313
- WebSocket (@jeneg) WebSocket #485
- Server Sent Events (@astropsy999) The clickjacking attack, SSE, CSS-animations #343
Storing data in the browser
- Cookies, document.cookie (@malechaneit) Document cookie #324
- LocalStorage, sessionStorage (@AntonBurchak) LocalStorage, sessionStorage #325
- IndexedDB (@astropsy999) IndexedDB #336
Animation
- Bezier curve (@kolumb) Bezier curve #344
- CSS-animations (@astropsy999) The clickjacking attack, SSE, CSS-animations #343
- JavaScript animations (@jeneg) JavaScript animations #542
Web components
- From the orbital height (@yugako) From the orbital height #337
- Custom elements (@jeneg) Custom elements #511
- Shadow DOM (@so-tati) Shadow DOM #510
- Template element (@Lelihelija) Template element #351
- Shadow DOM slots, composition (@kolumb) Shadow DOM slots, composition #381
- Shadow DOM styling (@SamGreenberg) Shadow DOM styling #418
- Shadow DOM and events (@so-tati) Shadow DOM and events #549
Regular expressions
- Patterns and flags (@bromotdi) Patterns and flags #488
- Character classes (@AntonBurchak) Character Classes #383
- Unicode: flag "u" and class \p{...} (@lanachayka) Unicode: flag "u" and class \p{...} #374
- Anchors: string start ^ and end $ (@git-antonyuk) Anchors: string start ^ and end $ #376
- Multiline mode of anchors ^ $, flag "m" (@bromotdi) Multiline mode of anchors ^ $, flag "m" #492
- Word boundary: \b (@vitaliimalynka) Word boundary: \b #424
- Escaping, special characters (@AntonBurchak) Escaping, special characters #435
- Sets and ranges [...] (@MrsMelnychenko) Sets and ranges [...] #421
- Quantifiers +, *, ? and {n} (@MrsMelnychenko) Quantifiers +, *, ? and {n} #420
- Greedy and lazy quantifiers (@SamGreenberg) Greedy and lazy quantifiers #450
- Capturing groups (@SamGreenberg) Capturing groups #441
- Backreferences in pattern: \N and \k<name> (@vitaliimalynka) Backreferences in pattern: \N and \k<name> #449
- Alternation (OR) | (@vladiuskor) Alternation (OR) | #388
- Lookahead and lookbehind (@MrsMelnychenko) Lookahead and lookbehind #439
- Catastrophic backtracking (@SamGreenberg) Catastrophic backtracking #444
- Sticky flag "y", searching at position (@lanachayka) Sticky flag y, searching at position #427
- Methods of RegExp and String (@SamGreenberg) Methods of RegExp and String #445