Skip to content

Commit 8f75ebd

Browse files
committed
fix: translation mistakes
1 parent af63d7c commit 8f75ebd

1 file changed

Lines changed: 9 additions & 10 deletions

File tree

1-js/09-classes/05-extend-natives/article.md

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33

44
Базовые классы, такие как Array, Map и другие могу быть также расширены.
55

6-
For instance, here `PowerArray` inherits from the native `Array`:
76
Например, в этом примере `PowerArray` наследуется от встроенного `Array`:
87

98
```js run
@@ -22,7 +21,7 @@ alert(filteredArr); // 10, 50
2221
alert(filteredArr.isEmpty()); // false
2322
```
2423

25-
Обратите внимание на интересную вещь: встроенные методы, такие как `filter`, `map` и другие возвращают новые объекты созданного пользовательского типа. Для этого они используют свойство `constructor`.
24+
Обратите внимание на интересный момент: встроенные методы, такие как `filter`, `map` и другие возвращают новые объекты созданного пользовательского типа. Для этого они используют свойство `constructor`.
2625

2726
В примере выше,
2827
```js
@@ -34,7 +33,7 @@ arr.constructor === PowerArray
3433

3534
Даже более, мы можем изменить поведение.
3635

37-
Специальный статичный геттер `Symbol.species`, если существует, возвращает конструктор, который можно использовать в таких случаях.
36+
Специальный статический геттер `Symbol.species`, если существует, возвращает конструктор, который можно использовать в таких случаях.
3837

3938
Если мы решим возвращать обычный массив из встроенных методов, таких как `map`, `filter` и т. д., мы можем вернуть `Array` из `Symbol.species`, как в этом примере:
4039

@@ -45,7 +44,7 @@ class PowerArray extends Array {
4544
}
4645

4746
*!*
48-
// встроенные методы будут использовать этот метот как конструктор
47+
// встроенные методы будут использовать этот метод как конструктор
4948
static get [Symbol.species]() {
5049
return Array;
5150
}
@@ -55,7 +54,7 @@ class PowerArray extends Array {
5554
let arr = new PowerArray(1, 2, 5, 10, 50);
5655
alert(arr.isEmpty()); // false
5756

58-
// filter создаст новый массив используя arr.constructor[Symbol.species] как конструктор
57+
// filter создаст новый массив, используя arr.constructor[Symbol.species] как конструктор
5958
let filteredArr = arr.filter(item => item >= 10);
6059

6160
*!*
@@ -64,20 +63,20 @@ let filteredArr = arr.filter(item => item >= 10);
6463
alert(filteredArr.isEmpty()); // Error: filteredArr.isEmpty is not a function
6564
```
6665

67-
Как вы видите, теперь `.filter` возвращает `Array`. Расширенный функционал не будет передаваться далее.
66+
Как вы видите, теперь `.filter` возвращает `Array`. Расширенная функциональность не будет передаваться далее.
6867

69-
## Отсутствие статичного наследования встроенных классов
68+
## Отсутствие статического наследования встроенных классов
7069

71-
У встроенных объектов есть собственные статичные методы, например `Object.keys`, `Array.isArray` и т. д.
70+
У встроенных объектов есть собственные статические методы, например `Object.keys`, `Array.isArray` и т. д.
7271

7372
Мы уже говорили ранее о встроенных классах, которые расширяют друг друга: `Array.[[Prototype]] = Object`.
7473

75-
Но статичные методы - исключение. Встроенные классы не наследуют статичные методы друг друга.
74+
Но статические методы - исключение. Встроенные классы не наследуют статические методы друг друга.
7675

7776
Другими словами, прототип встроенного конструктора `Array` не содержит указателя на `Object`. Таким образом, `Array` и `Date` не содержат `Array.keys` или `Date.keys`. И это выглядит естественно.
7877

7978
Ниже вы видите структуру `Date` и `Object`:
8079

8180
![](object-date-inheritance.png)
8281

83-
Заметьте, здесь нет связи между `Date` и `Object`.`Object` и `Date` существуют независимо. `Date.prototype` наследуется от `Object.prototype`, и только.
82+
Следует отметить, что здесь нет связи между `Date` и `Object`. Как `Object`, так и `Date` существуют независимо. `Date.prototype` наследуется только от `Object.prototype`.

0 commit comments

Comments
 (0)