72 lines
		
	
	
		
			2.7 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			72 lines
		
	
	
		
			2.7 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| ---
 | ||
| title: Object Instantiation
 | ||
| localeTitle: Создание объектов
 | ||
| ---
 | ||
| ## Создание объектов
 | ||
| 
 | ||
| В Javascript и большинстве других языков объект содержит ряд свойств, которые представляют собой пару ключей, значений. Существует несколько вариантов, когда вам нужно построить объект.
 | ||
| 
 | ||
| ### Инициализировать переменную объекта
 | ||
| 
 | ||
| Вы можете создать объект с заранее определенными свойствами:
 | ||
| 
 | ||
| ```javascript
 | ||
| let myObject = { 
 | ||
|   name: "Dave", 
 | ||
|   age: 33 
 | ||
|  } 
 | ||
| ```
 | ||
| 
 | ||
| ### Создание пустого объекта
 | ||
| 
 | ||
| Это создает пустой объект внутри нашей переменной myObject:
 | ||
| 
 | ||
| ```javascript
 | ||
| let myObject = new Object(); 
 | ||
| ```
 | ||
| 
 | ||
| Когда вы хотите добавить свойства к своему объекту, вы просто используете либо нотацию ноты, либо скобку с именем свойства по вашему выбору:
 | ||
| 
 | ||
| ```javascript
 | ||
| myObject.name = "Johnny Mnemonic" 
 | ||
|  myObject["age"] = 55 
 | ||
| ```
 | ||
| 
 | ||
| ### Использование функции конструктора
 | ||
| 
 | ||
| Вы можете определить функцию-конструктор, которую вы можете использовать для создания ваших объектов:
 | ||
| 
 | ||
| ```javascript
 | ||
| function Kitten(name, cute, color) { 
 | ||
|   this.name = name, 
 | ||
|   this.cute = cute, 
 | ||
|   this.color = color 
 | ||
|  } 
 | ||
| ```
 | ||
| 
 | ||
| Вы можете определить переменную, содержащую экземпляр этого объекта, вызывая функцию конструктора:
 | ||
| 
 | ||
| ```javascript
 | ||
| let myKitten = new Kitten("Nibbles", true, "white") 
 | ||
| ```
 | ||
| 
 | ||
| ### Object.create ()
 | ||
| 
 | ||
| Метод Object.create () (впервые определенный в ECMAScript 5.1) позволяет создавать объекты. он позволяет вам выбрать объект-прототип для вашего нового объекта без необходимости заранее определять функцию-конструктор.
 | ||
| 
 | ||
| ```javascript
 | ||
| // Our pre-defined object 
 | ||
|  let kitten = { 
 | ||
|   name: "Fluff", 
 | ||
|   cute: true, 
 | ||
|   color: "gray" 
 | ||
|  } 
 | ||
|  // Create a new object using Object.create(). kitten is used as the prototype 
 | ||
|  let newKitten = Object.create(kitten) 
 | ||
|  
 | ||
|  console.log(newKitten.name) // Will output "Fluff" 
 | ||
| ```
 | ||
| 
 | ||
| #### Больше информации
 | ||
| 
 | ||
| [Статья MDN по работе с объектами](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Working_with_Objects) |