Skip to content

Commit

Permalink
Завершает доку Array.of() (#5171)
Browse files Browse the repository at this point in the history
Co-authored-by: Tatiana Fokina <fokinatatian@gmail.com>
  • Loading branch information
vitya-ne and TatianaFokina committed Mar 24, 2024
1 parent f4fba07 commit 8bb6068
Showing 1 changed file with 30 additions and 4 deletions.
34 changes: 30 additions & 4 deletions js/array-of/index.md
Expand Up @@ -3,26 +3,28 @@ title: "`Array.of()`"
description: "Статический метод массива, создающий массив из переданных аргументов."
authors:
- hellsquirrel
- vitya-ne
related:
- js/arrays
- js/array-from
- js/array-foreach
tags:
- doka
- placeholder
---

## Кратко

`Array.of()` — статический метод, который создаёт массив из переданных ему аргументов. `Array.of()` и конструктор массива `Array()` работают практически одинаково. Разница возникает, если передавать этим функциям один аргумент, причём этот аргумент должен быть числом. В этом случае для конструктора `Array()` аргумент будет считаться длинной массива, а для `Array.of()` — первым элементом массива.
`Array.of()` — статический метод, который создаёт массив из переданных ему аргументов независимо от их количества. `Array.of()` и конструктор массива `Array()` работают практически одинаково. Разница возникает, если передавать этим функциям один аргумент, причём этот аргумент должен быть числом. В этом случае для конструктора `Array()` аргумент будет считаться длинной массива, а для `Array.of()` — первым элементом массива.

## Пример

```js
Array.of('🐱', 0b001, document.createElement('div')); // ['🐱', 1, div]
Array.of(3); // [3]
Array.of(2); // [2]
Array(2) // [empty × 2] — массив из двух пустых элементов

// Тип аргументов может быть любым
Array.of('🐱', 0b001, document.createElement('div')); // ['🐱', 1, div]

// Для строк всё работает одинаково
Array.of('котик') // ['котик']
Array('котик') // ['котик']
Expand All @@ -31,3 +33,27 @@ Array.of(10.5) // [10.5]
Array(10.5) // RangeError: Invalid array length
```

## Как пишется

Метод `Array.of()` принимает в качестве аргументов значения элементов, создаваемого массива. Если аргументы не указаны, будет создан пустой массив.

Метод `Array.of()` возвращает созданный массив.

## Как понять

Статический метод `Array.of()` это ещё один способ создания массива.

`Array.of()` может использоваться для создания массива из указанных элементов вне зависимости от их количества и типа. Длина создаваемого массива будет равна количеству аргументов.

## Подсказки

💡 При вызове метода `Array.of()` в качестве `this` может быть передана функция-конструктор. В этом случае результатом работы метода будет объект того же типа c дополнительными полями:

```js
const result = Array.of.call(Boolean, 10, 20, 30);

console.log(result);
// [Boolean: true] { '0': 10, '1': 20, '2': 30, length: 3 }
console.log(result instanceof Boolean);
// true
```

0 comments on commit 8bb6068

Please sign in to comment.