Skip to content

Commit d929d56

Browse files
authored
Removed the superfluous translation
1 parent 9ab329a commit d929d56

File tree

1 file changed

+9
-9
lines changed
  • 1-js/04-object-basics/06-constructor-new

1 file changed

+9
-9
lines changed

1-js/04-object-basics/06-constructor-new/article.md

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

77
## Функция-конструктор
88

9-
Функции-конструкторы технически являются обычными функциями. Однако есть два соглашения:
9+
Функции-конструкторы технически являются обычными функциями. Но есть два соглашения:
1010

1111
1. Имя функции-конструктора должно начинаться с большой буквы.
1212
2. Они должны выполняться только с помощью оператора `"new"`.
@@ -62,7 +62,7 @@ let user = {
6262

6363
Теперь, если нам будет необходимо создать других пользователей, мы можем просто вызвать `new User("Ann")`, `new User("Alice")` и так далее. Данная конструкция гораздо удобнее и читабельнее, чем каждый раз создавать литерал объекта.
6464

65-
Это и есть основная цель конструкторов - реализовать код для многократного создания однотипных объектов.
65+
Это и является основной целью конструкторов - реализовать код для многократного создания однотипных объектов.
6666

6767
Давайте ещё раз отметим - технически любая функция (кроме функций со стрелками, поскольку у них нет `this`) может использоваться в качестве конструктора. Его можно запустить с помощью `new`, и он выполнит выше указанный алгоритм. Должна начинаться с "заглавной буквы" - это общее соглашение, чтобы было ясно, что функция должна вызываться с помощью "new".
6868

@@ -110,9 +110,9 @@ new User(); // function User { ... }
110110
*/!*
111111
```
112112

113-
Это можно использовать внутри функции, чтобы узнать, была ли она вызвана при `new`, "в режиме конструктора", или без него, "в обычном режиме".
113+
Это можно использовать внутри функции, чтобы узнать, была ли она вызвана при помощи `new`, "в режиме конструктора", или без него, "в обычном режиме".
114114

115-
Мы также можем сделать чтобы `new` и обычные вызовы делали то же самое, как-то так:
115+
Мы также можем сделать чтобы `new` и обычные вызовы делали одно и тоже, как-то так:
116116

117117
```js run
118118
function User(name) {
@@ -129,7 +129,7 @@ alert(john.name); // John
129129

130130
Такой подход иногда используется в библиотеках, чтобы сделать синтаксис более гибким. Так чтобы люди могли вызывать функцию с `new` или без него, и она все ещё могла работать.
131131

132-
Впрочем вероятно, это не очень хорошая практика использовать этот трюк везде, так как опуск `new` делает немного менее очевидным то, что происходит. С `new` мы все понимаем, что создаётся новый объект.
132+
Впрочем, вероятно, это не очень хорошая практика использовать этот трюк везде, так как опуск `new` делает немного менее очевидным то, что происходит. С `new` мы все точно знаем, что создаётся новый объект.
133133

134134
## Возврат значения из конструктора, return
135135

@@ -168,7 +168,7 @@ function SmallUser() {
168168
alert( new SmallUser().name ); // John
169169
```
170170

171-
Обычно у конструкторов отсутствует `return`. Здесь мы упоминаем об особом поведении с возвращаемыми объектами в основном для полноты картины.
171+
Обычно у конструкторов отсутствует `return`. Здесь мы упомянули особое поведение с возвращаемыми объектами в основном для полноты картины.
172172

173173
````smart header="Опуск скобок"
174174
Кстати, мы можем не ставить круглые скобки после `new`, если у него нет аргументов:
@@ -179,7 +179,7 @@ let user = new User; // <-- без скобок
179179
let user = new User();
180180
```
181181
182-
Пропуск скобок здесь не считается "хорошим стилем", но просто чтобы вы знали, такой синтаксис разрешён спецификацией.
182+
Пропуск скобок считается плохой практикой, но просто чтобы вы знали, такой синтаксис разрешён спецификацией.
183183
````
184184

185185
## Создание методов в конструкторе
@@ -213,7 +213,7 @@ john = {
213213
*/
214214
```
215215

216-
Для создания сложных объектов существует более продвинутый синтаксис - [классы](info:classes), который мы рассмотрим позже.
216+
Для создания сложных объектов есть и более продвинутый синтаксис - [классы](info:classes), который мы рассмотрим позже.
217217

218218
## Итого
219219

@@ -227,5 +227,5 @@ JavaScript предоставляет функции-конструкторы д
227227
```smart header="Объекты, we'll be back! (мы ещё вернёмся!)"
228228
В этой главе мы рассмотрели только основы объектов и конструкторов. Данная информация необходима нам для дальнейшего изучения типов данных и функций в последующих главах.
229229
230-
После того, как мы с этим разберёмся, мы вернёмся к объектам для более детального изучения в главах <info:prototypes> и <info:classes>.
230+
Как только мы с ними разберёмся, мы вернёмся к объектам для более детального изучения в главах <info:prototypes> и <info:classes>.
231231
```

0 commit comments

Comments
 (0)