![]() An interesting question may arise in the example above: what’s the value of this inside set fullName(value)? Where are the properties this.name and this.surname written: into user or admin? The answer is simple: this is not affected by prototypes at all. No matter where the method is found: in an object or its prototype. In a method call, this is always the object before the dot. So, the setter call admin.fullName= uses admin as this, not user. That is actually a super-important thing, because we may have a big object with many methods, and have objects that inherit from it. And when the inheriting objects run the inherited methods, they will modify only their own states, not the state of the big object. The example code doesn't show these concepts. Also, these additions can make readers ask questions before the explanation of the example code. |
||
---|---|---|
1-js | ||
2-ui | ||
3-frames-and-windows | ||
4-binary | ||
5-network | ||
6-data-storage | ||
7-animation | ||
8-web-components | ||
9-regular-expressions | ||
script | ||
.gitattributes | ||
.gitignore | ||
AUTHORING.md | ||
changes.sketch | ||
css.md | ||
figures.sketch | ||
LICENSE.md | ||
README.md | ||
todo.md |
The Modern JavaScript Tutorial
This repository hosts the English content of the Modern JavaScript Tutorial, published at https://javascript.info.
Translations
We'd like to make the tutorial available in many languages. Please help us to translate.
See https://javascript.info/translate for the details.
Contributions
We'd also like to collaborate on the tutorial with other people.
Something's wrong? A topic is missing? Explain it to people, add as PR 👏
You can edit the text in any editor. The tutorial uses enhanced "markdown" format, easy to grasp. And if you want to see how it looks on-site, there's a server to run the tutorial locally at https://github.com/javascript-tutorial/server.
The list of contributors is available at https://javascript.info/about#contributors.
Structure
Every chapter, article or a task has its folder.
The folder is named like N-url
, where N
is a number for the sorting purposes and url
is the URL part with title of the material.
The type of the material is defined by the file inside the folder:
index.md
stands for a chapterarticle.md
stands for an articletask.md
stands for a task (solution must be provided insolution.md
file aswell)
Each of these files starts from the # Main header
.
It's very easy to add something new.
♥
Ilya Kantor @iliakan