update docs, add object

This commit is contained in:
2025-02-27 16:37:59 +03:00
parent 698358afaf
commit b021fab251
12 changed files with 175 additions and 43 deletions

View File

@@ -2,10 +2,10 @@
sidebar_position: 1
---
# Введение
# Общая информация
#### Function Declaration: функция в основном потоке кода
```
```js
function sum(a, b) {
let result = a + b;
@@ -14,7 +14,7 @@ function sum(a, b) {
```
#### Function Expression: функция как часть выражения
```
```js
let sum = function(a, b) {
let result = a + b;
@@ -23,7 +23,7 @@ let sum = function(a, b) {
```
#### Стрелочные функции:
```
```js
// выражение в правой части
let sum = (a, b) => a + b;

View File

@@ -5,9 +5,9 @@ sidebar_position: 2
# Function Declaration
Function Declaration (Объявление Функции):
```
```js
function имя(параметры, через, запятую) {
...тело, код функции...
//...тело, код функции...
}
```
Переменные, объявленные внутри функции, видны только внутри этой функции.

View File

@@ -6,7 +6,7 @@ sidebar_position: 3
**Function Declaration (Объявление Функции):**
```
```js
function sayHi() {
alert( "Привет" );
}
@@ -14,7 +14,7 @@ function sayHi() {
**Function Expression (Функциональное Выражение).**
```
```js
let sayHi = function() {
alert( "Привет" );
};
@@ -25,7 +25,7 @@ let sayHi = function() {
Давайте повторим: независимо от того, как создаётся функция она является значением. В обоих приведённых выше примерах
функция хранится в переменной sayHi.
```
```js
function sayHi() {
alert( "Привет" );
}
@@ -48,7 +48,7 @@ alert( sayHi ); // выведет код функции
***Function Declaration может быть вызвана раньше, чем она объявлена.***
```
```js
sayHi("Вася"); // Привет, Вася
function sayHi(name) {
@@ -57,7 +57,7 @@ function sayHi(name) {
```
***Function Expression создаётся, когда выполнение доходит до него, и затем уже может использоваться.***
```
```js
sayHi("Вася"); // ошибка!
let sayHi = function(name) { // (*) магии больше нет

View File

@@ -6,7 +6,9 @@ sidebar_position: 4
Существует ещё один очень простой и лаконичный синтаксис для создания функций, который часто лучше, чем Function Expression.
``` let sum = (a, b) => a + b;```
```js
let sum = (a, b) => a + b;
```
## У стрелочных функций нет «this»
Если происходит обращение к this, его значение берётся снаружи.
@@ -23,7 +25,7 @@ sidebar_position: 4
## Стрелочные функции не имеют «arguments»
Это отлично подходит для декораторов, когда нам нужно пробросить вызов с текущими this и arguments.
```
```js
function defer(f, ms) {
return function() {
setTimeout(() => f.apply(this, arguments), ms)
@@ -40,7 +42,7 @@ sayHiDeferred("John"); // выводит "Hello, John" через 2 секунд
То же самое без стрелочной функции выглядело бы так:
```
```js
function defer(f, ms) {
return function(...args) {
let ctx = this;