Repository navigation
Description
Maintainer List
@luizclr, @odsantos, @Mr-Saxobeat, @jonnathan-ls, @leopoldovcfonseca, @nazarepiedady, @murillorossetti, @gabifs
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 (@mrodrigochaves)
- Manuals and specifications (@Mr-Saxobeat) Manuals and specifications #53
- Code editors (@mrodrigochaves)
- Developer console (@mrodrigochaves)
JavaScript Fundamentals
- Hello, world! (@mrodrigochaves)
- Code structure (@mrodrigochaves)
- The modern mode, "use strict" (@daliannyvieira)
- Variables (@mrodrigochaves)
- Data types (@mrodrigochaves) and (@jonnathan-ls) Data types #243
- Interaction: alert, prompt, confirm (@EvertonCosmo)
- Type Conversions (@PauloBacelar) Type Conversions #212
- Basic operators, maths (@betofc89) and (@peruibeloko ) Basic operators, maths #412
- Comparisons (@Andres-ibanez) Translate comparisons #15
- Conditional branching: if, '?' (@jonnathan-ls) Conditional branching: if, '?' #246
- Logical operators (@jonnathan-ls) Logical operators #401
- Nullish coalescing operator '??' (@ermogenes) nullish-coalescing-operator finished #195
- Loops: while and for (@gabifs) Translate/while for #451
- The "switch" statement (@odsantos) The "switch" statement #108
- Functions (@dheyson)
- Function expressions (@gabifs) Function expressions #452
- Arrow functions, the basics (@allanpaza)
- JavaScript specials (@odsantos) Javascript specials #445
Code quality
- Debugging in the browser (@zenobiopereira) Debugging in the browser #399
- Coding Style (@odsantos)
- Comments (@odsantos)
- Ninja code (@Mr-Saxobeat) Ninja code #182
- Automated testing with Mocha (@odsantos)
- Polyfills and transpilers (@odsantos) Polyfills and transpilers #215
Objects: the basics
- Objects (@odsantos)
- Object references and copying (@danilolmc) Object references and copying #408
- Garbage collection (@gabifs) Garbage collection #453
- Object methods, "this" (@gabifs) Object methods (this) #454
- Constructor, operator "new" (@PedroDousseau) Constructor, operator "new" #400
- Optional chaining '?.' (@gabifs ) Optional chaining #455
- Symbol type (@danilolmc) Symbol type #409
- Object to primitive conversion (@diogoosz) Object to primitive conversion #489
Data types
- Methods of primitives (@DouglasMV)
- Numbers (@diogoosz) Numbers #478
- Strings (@DesKd) Strings #456
- Arrays (@diogoosz) Arrays #479
- Array methods (@adriavieira314) Array methods #109
- Iterables (@diogoosz) Iterables #461
- Map and Set (@gabifs) Map and Set #405
- WeakMap and WeakSet (@diogoosz) WeakMap and WeakSet #463
- Object.keys, values, entries (@diogoosz) Object.keys, values, entries #464
- Destructuring assignment (@diogoosz) Destructuring assignment #462
- Date and time (@gabifs)
- JSON methods, toJSON (@diogoosz) Translate "JSON methods, toJSON" article to Portuguese #475
Advanced working with functions
- Recursion and stack (@diogoosz) Recursion and stack #485
- Rest parameters and spread syntax (@diogoosz) Rest parameters and spread syntax #476
- Variable scope, closure (@diogoosz) Variable scope, closure #486
- The old "var" (@diogoosz) The old "var" #477
- Global object (@anapaulalemos) Global object #123
- Function object, NFE (@diogoosz) Function object, NFE #481
- The "new Function" syntax (@tfbio) The "new Function" syntax #156
- Scheduling: setTimeout and setInterval (@diogoosz) Scheduling: setTimeout and setInterval #483
- Decorators and forwarding, call/apply (@nazarepiedady) Decorators and forwarding, call/apply #218
- Function binding (@diogoosz) Function binding #484
- Arrow functions revisited (@mauehara)
Object properties configuration
- Property flags and descriptors (@herbertpdl) Property flags and descriptors #219
- Property getters and setters (@diogoosz) Property getters and setters #480
Prototypes, inheritance
- Prototypal inheritance (@flaviohblima) Prototypal inheritance #230
- F.prototype (@flaviohblima) F.prototype #231
- Native prototypes (@flaviohblima) Native prototypes #233
- Prototype methods, objects without proto (@diogoosz) Prototype methods, objects without __proto__ #482
Classes
- Class basic syntax (@thiagocardoso1988) Class basic syntax #248
- Class inheritance (@diogoosz) Class inheritance #472
- Static properties and methods (@diogoosz) Static properties and methods #473
- Private and protected properties and methods (@danilolmc) Private and protected properties and methods #410
- Extending built-in classes (@danilolmc) Extending built-in classes #413
- Class checking: "instanceof" (@danilolmc) Class checking: "instanceof" #398
- Mixins (@danilolmc) Mixins #382
Error handling
- Error handling, "try...catch" (@diogoosz) Error handling, try...catch #466
- Custom errors, extending Error (@diogoosz) Custom errors, extending Error #474
Promises, async/await
- Introduction: callbacks (@nildo)
- Promise (@diogoosz) Promise #465
- Promises chaining (@kiniggit) Promises chaining #120
- Error handling with promises (@diogoosz) Error handling with promises #467
- Promise API (@diogoosz) Promise API #468
- Promisification (@diogoosz) Promisification #471
- Microtasks (@diogoosz) Microtasks #469
- Async/await (@diogoosz) Async/await #470
Generators, advanced iteration
- Generators (@danilolmc) Generators #414
- Async iteration and generators (@danilolmc) Async iteration and generators #418
Modules
- Modules, introduction (@diogoosz) Modules, introduction #490
- Export and Import (@anapaulalemos)
- Dynamic imports (@danilolmc) Dynamic imports #419
Miscellaneous
- Proxy and Reflect (@danilolmc) Proxy and Reflect #422
- Eval: run a code string (@diogoosz) Eval: run a code string #487
- Currying (@diogoosz) Currying #488
- Reference Type (@danilolmc) Reference Type #423
- BigInt (@danilolmc) BigInt #430
- Unicode, String internals (@notFaceroll) Unicode, String internals #426
- WeakRef and FinalizationRegistry (@diogoosz) Translate "WeakRef and FinalizationRegistry" #491
Browser: Document, Events, Interfaces
Document
- Browser environment, specs
- DOM tree
- Walking the DOM (@exploitmik)
- Searching: getElement*, querySelector* (@danilolmc) Searching: getElement*, querySelector* #432
- Node properties: type, tag and contents
- Attributes and properties (@denis-rossati)
- Modifying the document
- Styles and classes (@danilolmc) Styles and classes #433
- Element size and scrolling
- Window sizes and scrolling
- Coordinates
Introduction to Events
- Introduction to browser events
- Bubbling and capturing
- Event delegation
- Browser default actions
- Dispatching custom events
UI Events
- Mouse events
- Moving the mouse: mouseover/out, mouseenter/leave
- Drag'n'Drop with mouse events
- Pointer events
- Keyboard: keydown and keyup
- Scrolling
Forms, controls
- Form properties and methods
- Focusing: focus/blur
- Events: change, input, cut, copy, paste
- Forms: event and method submit (@brunacborgesm) Forms: event and method submit #449
Document and resource loading
- Page: DOMContentLoaded, load, beforeunload, unload
- Scripts: async, defer (@larissaiurk) Scripts: async, defer #229
- Resource loading: onload and onerror
Miscellaneous
Frames and windows
Binary data, files
- ArrayBuffer, binary arrays (@gabifs) ArrayBuffer, binary arrays #450
- TextDecoder and TextEncoder
- Blob
- File and FileReader
Network requests
- Fetch
- FormData
- Fetch: Download progress
- Fetch: Abort
- Fetch: Cross-Origin Requests
- Fetch API
- URL objects
- XMLHttpRequest
- Resumable file upload
- Long polling
- WebSocket
- Server Sent Events
Storing data in the browser
Animation
Web components
- From the orbital height
- Custom elements (@gabifs) Custom elements #443
- Shadow DOM and events
- Template element (@HakaCode)
- Shadow DOM slots, composition
- Shadow DOM styling
- Shadow DOM and events
Regular expressions
- Patterns and flags (@fsdude) Patterns and flags #147
- Character classes (@odsantos) Character classes #274
- Unicode: flag "u" and class \p{...} (@peruibeloko) Unicode: flag "u" and class \p{...} #415
- Anchors: string start ^ and end $ (@peruibeloko) Anchors: string start ^ and end $ #420
- Multiline mode of anchors ^ $, flag "m" (@peruibeloko) Multiline mode of anchors ^ $, flag "m" #421
- Word boundary: \b (@peruibeloko) Word boundary: \b #424
- Escaping, special characters (@peruibeloko) Escaping, special characters #425
- Sets and ranges [...] (@peruibeloko) Sets and ranges [...] #427
- Quantifiers +, *, ? and {n} (@peruibeloko) Quantifiers +, *, ? and {n} #429
- Greedy and lazy quantifiers
- Capturing groups
- Backreferences in pattern: \N and \k<name>
- Alternation (OR) |
- Lookahead and lookbehind
- Catastrophic backtracking
- Sticky flag "y", searching at position
- Methods of RegExp and String (@fsdude) Methods of RegExp and String #141
Activity
rafaelgou commentedon Apr 25, 2019
Hi, @mrodrigochaves, can I join the effort? Do we have a glossary/style guide? If not, is there any from other languages that we could use as a starting point?
Thanks!
iliakan commentedon Apr 26, 2019
Maybe there is a well-known glossary for web terms ?
iliakan commentedon Apr 26, 2019
@rafaelgou you don’t need a permission to join. Just tell us what is you’re translating.
rafaelgou commentedon Apr 26, 2019
Thanks, @iliakan. I'm researching a starting glossary and a way to store what we decide to unify during translation.
mrodrigochaves commentedon Apr 29, 2019
Welcome, @rafaelgou ! I'm following a list according to the topic above: For new translators.
DouglasMV commentedon May 11, 2019
Hi I'm going to help translate.
I will start with the "Methods of primitives" article at 1-js/05-data-types/01-primitives-methods
iliakan commentedon May 11, 2019
When I look at Wikipedia, there's only pt.wikipedia.org.
Does it really make sense to have separate pt-br.javascript.info and pt-pt.javascript.info? Or we can join the efforts to have just pt.javascript.info?
DouglasMV commentedon May 11, 2019
As a brazilian i can tell you that if i read a technical text, wich is the case, in Portugal's portuguese, I can understand but i cleary know i'm reading pt-pt not pt-br. But i cannot write in pt-pt only in pt-br. I hope that helps to clear a little bit how they are different.
mrodrigochaves commentedon May 12, 2019
Hello @iliakan,
I understand your placement.
My suggestion is: either keep pt-br.javascript.info, or switch to pt.javascript.info.
However, I would have to keep native contributors from Brazil or Portugal, not from both countries, because of the difference that @DouglasMV commented above.
[-]Portuguese (Brazil) Translation Progress[/-][+]Portuguese Translation Progress[/+]iliakan commentedon May 14, 2019
Thanks, I saw that Wikipedia has only PT, so I joined pt-br and pt-pt into PT.
If Wiki is ok with that, we should be fine too =)
iliakan commentedon May 14, 2019
For Wiki: an article must be either pt-pt or pt-br, not mixed.
I guess, if both regions understand each other, that rule is enough to keep both contributors.
That said, pt-pt version did not ever came to life.
iliakan commentedon May 28, 2019
@mrodrigochaves may I wonder, what's your email? I'm making a non-public list of emails of all maintainers, to have a backup contact (if the translation appears to be dead or something).
DouglasMV commentedon May 29, 2019
I'm translating 1-js/05-data-types/02-number/
Merge pull request #1 from javascript-tutorial/master
397 remaining items
diogoosz commentedon Nov 8, 2026
Property getters and setters
diogoosz commentedon Nov 8, 2026
Function object, NFE
diogoosz commentedon Nov 8, 2026
Prototype methods, objects without proto
diogoosz commentedon Nov 9, 2026
Scheduling: setTimeout and setInterval
diogoosz commentedon Nov 9, 2026
Function binding
diogoosz commentedon Nov 9, 2026
Recursion and stack
diogoosz commentedon Nov 9, 2026
Variable scope, closure
diogoosz commentedon Nov 9, 2026
Eval: run a code string
diogoosz commentedon Nov 9, 2026
Currying
diogoosz commentedon Nov 9, 2026
Object to primitive conversion
diogoosz commentedon Nov 9, 2026
Modules, introduction
diogoosz commentedon Nov 9, 2026
nazarepiedady commentedon Nov 9, 2026
@diogoosz I would like to remember you that the communication here is done in English. When you pull request your updates, mention me to review it.
diogoosz commentedon Nov 9, 2026
@gabifs hi! I saw the article "Date and time" is listed under your name in the translation checklist, but I couldn't find any related PR yet. Can I take over this translation, or are you already working on it?
diogoosz commentedon Nov 9, 2026
@nazarepiedady thanks for the heads-up, noted. I currently have several open PRs ready for review (#474 to #491) — feel free to review any of them whenever you have time.