@rogolev/value 0.0.3 → 0.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +142 -1
- package/docs/helpers/array/array_chunk.md +80 -0
- package/docs/helpers/array/array_chunk_with_keys.md +81 -0
- package/docs/helpers/array/array_column.md +110 -0
- package/docs/helpers/array/array_combine.md +77 -0
- package/docs/helpers/array/array_count_values.md +71 -0
- package/docs/helpers/array/array_diff.md +97 -0
- package/docs/helpers/array/array_diff_assoc.md +81 -0
- package/docs/helpers/array/array_diff_key.md +81 -0
- package/docs/helpers/array/array_diff_uassoc.md +101 -0
- package/docs/helpers/array/array_diff_ukey.md +101 -0
- package/docs/helpers/array/array_fill.md +81 -0
- package/docs/helpers/array/array_fill_keys.md +73 -0
- package/docs/helpers/array/array_filter.md +79 -0
- package/docs/helpers/array/array_flip.md +70 -0
- package/docs/helpers/array/array_index_max.md +78 -0
- package/docs/helpers/array/array_index_min.md +78 -0
- package/docs/helpers/array/array_intersect.md +91 -0
- package/docs/helpers/array/array_intersect_assoc.md +91 -0
- package/docs/helpers/array/array_intersect_key.md +91 -0
- package/docs/helpers/array/array_intersect_uassoc.md +101 -0
- package/docs/helpers/array/array_intersect_ukey.md +101 -0
- package/docs/helpers/array/array_key_exists.md +73 -0
- package/docs/helpers/array/array_key_first.md +62 -0
- package/docs/helpers/array/array_key_last.md +62 -0
- package/docs/helpers/array/array_key_to_lower_case.md +57 -0
- package/docs/helpers/array/array_key_to_upper_case.md +57 -0
- package/docs/helpers/array/array_keys.md +62 -0
- package/docs/helpers/array/array_map.md +69 -0
- package/docs/helpers/array/array_merge.md +67 -0
- package/docs/helpers/array/array_merge_recursive.md +86 -0
- package/docs/helpers/array/array_pad.md +83 -0
- package/docs/helpers/array/array_pop.md +64 -0
- package/docs/helpers/array/array_product.md +62 -0
- package/docs/helpers/array/array_push.md +57 -0
- package/docs/helpers/array/array_rand.md +99 -0
- package/docs/helpers/array/array_reduce.md +77 -0
- package/docs/helpers/array/array_replace.md +85 -0
- package/docs/helpers/array/array_replace_recursive.md +87 -0
- package/docs/helpers/array/array_reverse.md +55 -0
- package/docs/helpers/array/array_search.md +74 -0
- package/docs/helpers/array/array_shift.md +64 -0
- package/docs/helpers/array/array_slice.md +65 -0
- package/docs/helpers/array/array_splice.md +103 -0
- package/docs/helpers/array/array_sum.md +55 -0
- package/docs/helpers/array/array_udiff.md +97 -0
- package/docs/helpers/array/array_udiff_assoc.md +101 -0
- package/docs/helpers/array/array_udiff_uassoc.md +88 -0
- package/docs/helpers/array/array_uintersect.md +101 -0
- package/docs/helpers/array/array_uintersect_assoc.md +102 -0
- package/docs/helpers/array/array_uintersect_uassoc.md +135 -0
- package/docs/helpers/array/array_unique.md +54 -0
- package/docs/helpers/array/array_unshift.md +58 -0
- package/docs/helpers/array/array_values.md +54 -0
- package/docs/helpers/array/array_walk.md +87 -0
- package/docs/helpers/array/array_walk_recursive.md +93 -0
- package/docs/helpers/array/count.md +54 -0
- package/docs/helpers/array/in_array.md +65 -0
- package/docs/helpers/array/natsort.md +60 -0
- package/docs/helpers/array/range.md +76 -0
- package/docs/helpers/array/shuffle.md +74 -0
- package/docs/helpers/array/sort.md +79 -0
- package/docs/helpers/is_char.md +84 -0
- package/docs/helpers/string/is_digit_char.md +70 -0
- package/docs/helpers/string/is_whitespace_char.md +70 -0
- package/docs/helpers/string/natcompare.md +69 -0
- package/docs/helpers/string/natcompare_numeric.md +70 -0
- package/docs/helpers.md +125 -1
- package/index.mjs +66 -1
- package/package.json +2 -1
- package/prettier.config.mjs +2 -1
- package/src/helpers/array/array_chunk.mjs +102 -0
- package/src/helpers/array/array_chunk_with_keys.mjs +102 -0
- package/src/helpers/array/array_column.mjs +131 -0
- package/src/helpers/array/array_combine.mjs +26 -0
- package/src/helpers/array/array_count_values.mjs +82 -0
- package/src/helpers/array/array_diff.mjs +77 -0
- package/src/helpers/array/array_diff_assoc.mjs +56 -0
- package/src/helpers/array/array_diff_key.mjs +56 -0
- package/src/helpers/array/array_diff_uassoc.mjs +76 -0
- package/src/helpers/array/array_diff_ukey.mjs +71 -0
- package/src/helpers/array/array_fill.mjs +108 -0
- package/src/helpers/array/array_fill_keys.mjs +90 -0
- package/src/helpers/array/array_filter.mjs +105 -0
- package/src/helpers/array/array_flip.mjs +58 -0
- package/src/helpers/array/array_index_max.mjs +82 -0
- package/src/helpers/array/array_index_min.mjs +82 -0
- package/src/helpers/array/array_intersect.mjs +71 -0
- package/src/helpers/array/array_intersect_assoc.mjs +67 -0
- package/src/helpers/array/array_intersect_key.mjs +67 -0
- package/src/helpers/array/array_intersect_uassoc.mjs +77 -0
- package/src/helpers/array/array_intersect_ukey.mjs +72 -0
- package/src/helpers/array/array_key_exists.mjs +83 -0
- package/src/helpers/array/array_key_first.mjs +73 -0
- package/src/helpers/array/array_key_last.mjs +74 -0
- package/src/helpers/array/array_key_to_lower_case.mjs +71 -0
- package/src/helpers/array/array_key_to_upper_case.mjs +71 -0
- package/src/helpers/array/array_keys.mjs +65 -0
- package/src/helpers/array/array_map.mjs +84 -0
- package/src/helpers/array/array_merge.mjs +95 -0
- package/src/helpers/array/array_merge_recursive.mjs +153 -0
- package/src/helpers/array/array_pad.mjs +105 -0
- package/src/helpers/array/array_pop.mjs +82 -0
- package/src/helpers/array/array_product.mjs +67 -0
- package/src/helpers/array/array_push.mjs +75 -0
- package/src/helpers/array/array_rand.mjs +129 -0
- package/src/helpers/array/array_reduce.mjs +90 -0
- package/src/helpers/array/array_replace.mjs +25 -0
- package/src/helpers/array/array_replace_recursive.mjs +109 -0
- package/src/helpers/array/array_reverse.mjs +62 -0
- package/src/helpers/array/array_search.mjs +104 -0
- package/src/helpers/array/array_shift.mjs +78 -0
- package/src/helpers/array/array_slice.mjs +99 -0
- package/src/helpers/array/array_splice.mjs +218 -0
- package/src/helpers/array/array_sum.mjs +60 -0
- package/src/helpers/array/array_udiff.mjs +91 -0
- package/src/helpers/array/array_udiff_assoc.mjs +71 -0
- package/src/helpers/array/array_udiff_uassoc.mjs +124 -0
- package/src/helpers/array/array_uintersect.mjs +72 -0
- package/src/helpers/array/array_uintersect_assoc.mjs +77 -0
- package/src/helpers/array/array_uintersect_uassoc.mjs +121 -0
- package/src/helpers/array/array_unique.mjs +77 -0
- package/src/helpers/array/array_unshift.mjs +64 -0
- package/src/helpers/array/array_values.mjs +57 -0
- package/src/helpers/array/array_walk.mjs +95 -0
- package/src/helpers/array/array_walk_recursive.mjs +104 -0
- package/src/helpers/array/count.mjs +57 -0
- package/src/helpers/array/in_array.mjs +67 -0
- package/src/helpers/array/natsort.mjs +62 -0
- package/src/helpers/array/range.mjs +121 -0
- package/src/helpers/array/shuffle.mjs +73 -0
- package/src/helpers/array/sort.mjs +69 -0
- package/src/helpers/is_char.mjs +54 -0
- package/src/helpers/string/is_digit_char.mjs +60 -0
- package/src/helpers/string/is_whitespace_char.mjs +54 -0
- package/src/helpers/string/natcompare.mjs +107 -0
- package/src/helpers/string/natcompare_numeric.mjs +131 -0
- package/tests/helpers/array/array_chunk.test.mjs +49 -0
- package/tests/helpers/array/array_chunk_with_keys.test.mjs +45 -0
- package/tests/helpers/array/array_column.test.mjs +87 -0
- package/tests/helpers/array/array_combine.test.mjs +41 -0
- package/tests/helpers/array/array_count_values.test.mjs +40 -0
- package/tests/helpers/array/array_diff.test.mjs +78 -0
- package/tests/helpers/array/array_diff_assoc.test.mjs +64 -0
- package/tests/helpers/array/array_diff_key.test.mjs +64 -0
- package/tests/helpers/array/array_diff_uassoc.test.mjs +73 -0
- package/tests/helpers/array/array_diff_ukey.test.mjs +77 -0
- package/tests/helpers/array/array_fill.test.mjs +47 -0
- package/tests/helpers/array/array_fill_keys.test.mjs +35 -0
- package/tests/helpers/array/array_filter.test.mjs +38 -0
- package/tests/helpers/array/array_flip.test.mjs +33 -0
- package/tests/helpers/array/array_index_max.test.mjs +41 -0
- package/tests/helpers/array/array_index_min.test.mjs +41 -0
- package/tests/helpers/array/array_intersect.test.mjs +65 -0
- package/tests/helpers/array/array_intersect_assoc.test.mjs +65 -0
- package/tests/helpers/array/array_intersect_key.test.mjs +65 -0
- package/tests/helpers/array/array_intersect_uassoc.test.mjs +76 -0
- package/tests/helpers/array/array_intersect_ukey.test.mjs +74 -0
- package/tests/helpers/array/array_key_exists.test.mjs +36 -0
- package/tests/helpers/array/array_key_first.test.mjs +29 -0
- package/tests/helpers/array/array_key_last.test.mjs +29 -0
- package/tests/helpers/array/array_key_to_lower_case.test.mjs +23 -0
- package/tests/helpers/array/array_key_to_upper_case.test.mjs +23 -0
- package/tests/helpers/array/array_keys.test.mjs +27 -0
- package/tests/helpers/array/array_map.test.mjs +32 -0
- package/tests/helpers/array/array_merge.test.mjs +37 -0
- package/tests/helpers/array/array_merge_recursive.test.mjs +65 -0
- package/tests/helpers/array/array_pad.test.mjs +48 -0
- package/tests/helpers/array/array_pop.test.mjs +29 -0
- package/tests/helpers/array/array_product.test.mjs +33 -0
- package/tests/helpers/array/array_push.test.mjs +31 -0
- package/tests/helpers/array/array_rand.test.mjs +59 -0
- package/tests/helpers/array/array_reduce.test.mjs +44 -0
- package/tests/helpers/array/array_replace.test.mjs +46 -0
- package/tests/helpers/array/array_replace_recursive.test.mjs +46 -0
- package/tests/helpers/array/array_reverse.test.mjs +31 -0
- package/tests/helpers/array/array_search.test.mjs +48 -0
- package/tests/helpers/array/array_shift.test.mjs +29 -0
- package/tests/helpers/array/array_slice.test.mjs +49 -0
- package/tests/helpers/array/array_splice.test.mjs +67 -0
- package/tests/helpers/array/array_sum.test.mjs +27 -0
- package/tests/helpers/array/array_udiff.test.mjs +95 -0
- package/tests/helpers/array/array_udiff_assoc.test.mjs +77 -0
- package/tests/helpers/array/array_udiff_uassoc.test.mjs +89 -0
- package/tests/helpers/array/array_uintersect.test.mjs +78 -0
- package/tests/helpers/array/array_uintersect_assoc.test.mjs +80 -0
- package/tests/helpers/array/array_uintersect_uassoc.test.mjs +122 -0
- package/tests/helpers/array/array_unique.test.mjs +27 -0
- package/tests/helpers/array/array_unshift.test.mjs +31 -0
- package/tests/helpers/array/array_values.test.mjs +27 -0
- package/tests/helpers/array/array_walk.test.mjs +48 -0
- package/tests/helpers/array/array_walk_recursive.test.mjs +53 -0
- package/tests/helpers/array/count.test.mjs +27 -0
- package/tests/helpers/array/in_array.test.mjs +52 -0
- package/tests/helpers/array/natsort.test.mjs +71 -0
- package/tests/helpers/array/range.test.mjs +51 -0
- package/tests/helpers/array/shuffle.test.mjs +42 -0
- package/tests/helpers/array/sort.test.mjs +60 -0
- package/tests/helpers/is_char.test.mjs +40 -0
- package/tests/helpers/string/is_digit_char.test.mjs +32 -0
- package/tests/helpers/string/is_whitespace_char.test.mjs +32 -0
- package/tests/helpers/string/natcompare.test.mjs +100 -0
- package/tests/helpers/string/natcompare_numeric.test.mjs +110 -0
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
[Главная](../../../README.md) / [Помощники](../../helpers.md) / array_key_exists
|
|
2
|
+
|
|
3
|
+
[Исходный код](../../../src/helpers/array/array_key_exists.mjs)
|
|
4
|
+
|
|
5
|
+
# array_key_exists
|
|
6
|
+
|
|
7
|
+
`array_key_exists` — Проверяет, существует ли указанный ключ в массиве.
|
|
8
|
+
|
|
9
|
+
## Сигнатура функции
|
|
10
|
+
|
|
11
|
+
```ts
|
|
12
|
+
function array_key_exists(value: object, key: number | string): boolean;
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Описание
|
|
16
|
+
|
|
17
|
+
Функция `array_key_exists` используется для проверки существования указанного ключа в массиве. Она
|
|
18
|
+
возвращает `true`, если ключ существует в массиве, и `false` в противном случае.
|
|
19
|
+
|
|
20
|
+
## Параметры
|
|
21
|
+
|
|
22
|
+
- `value` (object): Исходный массив.
|
|
23
|
+
- `key` (number | string): Ключ, который необходимо проверить.
|
|
24
|
+
|
|
25
|
+
## Возвращаемое значение
|
|
26
|
+
|
|
27
|
+
Возвращает `true`, если ключ существует в массиве, и `false` в противном случае.
|
|
28
|
+
|
|
29
|
+
## Примеры использования
|
|
30
|
+
|
|
31
|
+
1. Проверка существования ключа в обычном массиве:
|
|
32
|
+
|
|
33
|
+
```js
|
|
34
|
+
const array = [1, 2, 3];
|
|
35
|
+
const result = array_key_exists(array, 1);
|
|
36
|
+
console.log(result); // true
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
2. Проверка существования ключа в ассоциативном массиве:
|
|
40
|
+
|
|
41
|
+
```js
|
|
42
|
+
const array = { a: 1, b: 2, c: 3 };
|
|
43
|
+
const result = array_key_exists(array, 'b');
|
|
44
|
+
console.log(result); // true
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
3. Проверка отсутствия ключа в массиве:
|
|
48
|
+
|
|
49
|
+
```js
|
|
50
|
+
const array = [1, 2, 3];
|
|
51
|
+
const result = array_key_exists(array, 5);
|
|
52
|
+
console.log(result); // false
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
4. Обработка значений, не являющихся массивами:
|
|
56
|
+
|
|
57
|
+
```js
|
|
58
|
+
try {
|
|
59
|
+
const result = array_key_exists('not an array', 1);
|
|
60
|
+
} catch (e) {
|
|
61
|
+
console.error(e.message); // Параметр "value" должен быть массивом.
|
|
62
|
+
}
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
5. Обработка значений ключа, не являющихся целыми числами или строками:
|
|
66
|
+
|
|
67
|
+
```js
|
|
68
|
+
try {
|
|
69
|
+
const result = array_key_exists([1, 2, 3], {});
|
|
70
|
+
} catch (e) {
|
|
71
|
+
console.error(e.message); // Параметр "key" должен быть целым числом или строкой.
|
|
72
|
+
}
|
|
73
|
+
```
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
[Главная](../../../README.md) / [Помощники](../../helpers.md) / array_key_first
|
|
2
|
+
|
|
3
|
+
[Исходный код](../../../src/helpers/array/array_key_first.mjs)
|
|
4
|
+
|
|
5
|
+
# array_key_first
|
|
6
|
+
|
|
7
|
+
`array_key_first` — Возвращает первый ключ массива.
|
|
8
|
+
|
|
9
|
+
## Сигнатура функции
|
|
10
|
+
|
|
11
|
+
```ts
|
|
12
|
+
function array_key_first(value: object): number | string | null;
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Описание
|
|
16
|
+
|
|
17
|
+
Функция `array_key_first` используется для получения первого ключа массива. Она возвращает первый
|
|
18
|
+
ключ для обычных массивов и ассоциативных массивов.
|
|
19
|
+
|
|
20
|
+
## Параметры
|
|
21
|
+
|
|
22
|
+
- `value` (object): Исходный массив.
|
|
23
|
+
|
|
24
|
+
## Возвращаемое значение
|
|
25
|
+
|
|
26
|
+
Возвращает первый ключ массива. Если массив пустой, возвращает `null`.
|
|
27
|
+
|
|
28
|
+
## Примеры использования
|
|
29
|
+
|
|
30
|
+
1. Получение первого ключа обычного массива:
|
|
31
|
+
|
|
32
|
+
```js
|
|
33
|
+
const array = [1, 2, 3];
|
|
34
|
+
const result = array_key_first(array);
|
|
35
|
+
console.log(result); // 0
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
2. Получение первого ключа ассоциативного массива:
|
|
39
|
+
|
|
40
|
+
```js
|
|
41
|
+
const array = { a: 1, b: 2, c: 3 };
|
|
42
|
+
const result = array_key_first(array);
|
|
43
|
+
console.log(result); // 'a'
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
3. Обработка пустого массива:
|
|
47
|
+
|
|
48
|
+
```js
|
|
49
|
+
const array = [];
|
|
50
|
+
const result = array_key_first(array);
|
|
51
|
+
console.log(result); // null
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
4. Обработка значений, не являющихся массивами:
|
|
55
|
+
|
|
56
|
+
```js
|
|
57
|
+
try {
|
|
58
|
+
const result = array_key_first('not an array');
|
|
59
|
+
} catch (e) {
|
|
60
|
+
console.error(e.message); // Параметр "value" должен быть массивом.
|
|
61
|
+
}
|
|
62
|
+
```
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
[Главная](../../../README.md) / [Помощники](../../helpers.md) / array_key_last
|
|
2
|
+
|
|
3
|
+
[Исходный код](../../../src/helpers/array/array_key_last.mjs)
|
|
4
|
+
|
|
5
|
+
# array_key_last
|
|
6
|
+
|
|
7
|
+
`array_key_last` — Возвращает последний ключ массива.
|
|
8
|
+
|
|
9
|
+
## Сигнатура функции
|
|
10
|
+
|
|
11
|
+
```ts
|
|
12
|
+
function array_key_last(value: object): number | string | null;
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Описание
|
|
16
|
+
|
|
17
|
+
Функция `array_key_last` используется для получения последнего ключа массива. Она возвращает
|
|
18
|
+
последний ключ для обычных массивов и ассоциативных массивов.
|
|
19
|
+
|
|
20
|
+
## Параметры
|
|
21
|
+
|
|
22
|
+
- `value` (object): Исходный массив.
|
|
23
|
+
|
|
24
|
+
## Возвращаемое значение
|
|
25
|
+
|
|
26
|
+
Возвращает последний ключ массива. Если массив пустой, возвращает `null`.
|
|
27
|
+
|
|
28
|
+
## Примеры использования
|
|
29
|
+
|
|
30
|
+
1. Получение последнего ключа обычного массива:
|
|
31
|
+
|
|
32
|
+
```js
|
|
33
|
+
const array = [1, 2, 3];
|
|
34
|
+
const result = array_key_last(array);
|
|
35
|
+
console.log(result); // 2
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
2. Получение последнего ключа ассоциативного массива:
|
|
39
|
+
|
|
40
|
+
```js
|
|
41
|
+
const array = { a: 1, b: 2, c: 3 };
|
|
42
|
+
const result = array_key_last(array);
|
|
43
|
+
console.log(result); // 'c'
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
3. Обработка пустого массива:
|
|
47
|
+
|
|
48
|
+
```js
|
|
49
|
+
const array = [];
|
|
50
|
+
const result = array_key_last(array);
|
|
51
|
+
console.log(result); // null
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
4. Обработка значений, не являющихся массивами:
|
|
55
|
+
|
|
56
|
+
```js
|
|
57
|
+
try {
|
|
58
|
+
const result = array_key_last('not an array');
|
|
59
|
+
} catch (e) {
|
|
60
|
+
console.error(e.message); // Параметр "value" должен быть массивом.
|
|
61
|
+
}
|
|
62
|
+
```
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
[Главная](../../../README.md) / [Помощники](../../helpers.md) / array_key_to_lower_case
|
|
2
|
+
|
|
3
|
+
[Исходный код](../../../src/helpers/array/array_key_to_lower_case.mjs)
|
|
4
|
+
|
|
5
|
+
# array_key_to_lower_case
|
|
6
|
+
|
|
7
|
+
`array_key_to_lower_case` — Преобразует ключи ассоциативного массива в нижний регистр.
|
|
8
|
+
|
|
9
|
+
## Сигнатура функции
|
|
10
|
+
|
|
11
|
+
```ts
|
|
12
|
+
function array_key_to_lower_case(value: object): object;
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Описание
|
|
16
|
+
|
|
17
|
+
Функция `array_key_to_lower_case` используется для преобразования всех ключей ассоциативного массива
|
|
18
|
+
в нижний регистр. Если переданное значение не является массивом, функция выбрасывает ошибку типа
|
|
19
|
+
`TypeError`. Если переданное значение является списком (обычным массивом), оно возвращается без
|
|
20
|
+
изменений.
|
|
21
|
+
|
|
22
|
+
## Параметры
|
|
23
|
+
|
|
24
|
+
- `value` (object): Ассоциативный массив, ключи которого необходимо преобразовать в нижний регистр.
|
|
25
|
+
|
|
26
|
+
## Возвращаемое значение
|
|
27
|
+
|
|
28
|
+
Возвращает новый ассоциативный массив с ключами в нижнем регистре. Если переданное значение является
|
|
29
|
+
списком, оно возвращается без изменений.
|
|
30
|
+
|
|
31
|
+
## Примеры использования
|
|
32
|
+
|
|
33
|
+
1. Преобразование ключей ассоциативного массива в нижний регистр:
|
|
34
|
+
|
|
35
|
+
```js
|
|
36
|
+
const assoc = { Key1: 'value1', Key2: 'value2' };
|
|
37
|
+
const result = array_key_to_lower_case(assoc);
|
|
38
|
+
console.log(result); // { key1: 'value1', key2: 'value2' }
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
2. Обработка списка (обычного массива):
|
|
42
|
+
|
|
43
|
+
```js
|
|
44
|
+
const list = [1, 2, 3];
|
|
45
|
+
const result = array_key_to_lower_case(list);
|
|
46
|
+
console.log(result); // [1, 2, 3]
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
3. Обработка значения, не являющегося массивом:
|
|
50
|
+
|
|
51
|
+
```js
|
|
52
|
+
try {
|
|
53
|
+
const result = array_key_to_lower_case('not an array');
|
|
54
|
+
} catch (e) {
|
|
55
|
+
console.error(e.message); // Параметр "array" должен быть массивом.
|
|
56
|
+
}
|
|
57
|
+
```
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
[Главная](../../../README.md) / [Помощники](../../helpers.md) / array_key_to_upper_case
|
|
2
|
+
|
|
3
|
+
[Исходный код](../../../src/helpers/array/array_key_to_upper_case.mjs)
|
|
4
|
+
|
|
5
|
+
# array_key_to_upper_case
|
|
6
|
+
|
|
7
|
+
`array_key_to_upper_case` — Преобразует ключи ассоциативного массива в верхний регистр.
|
|
8
|
+
|
|
9
|
+
## Сигнатура функции
|
|
10
|
+
|
|
11
|
+
```ts
|
|
12
|
+
function array_key_to_upper_case(value: object): object;
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Описание
|
|
16
|
+
|
|
17
|
+
Функция `array_key_to_upper_case` используется для преобразования всех ключей ассоциативного массива
|
|
18
|
+
в верхний регистр. Если переданное значение не является массивом, функция выбрасывает ошибку типа
|
|
19
|
+
`TypeError`. Если переданное значение является списком (обычным массивом), оно возвращается без
|
|
20
|
+
изменений.
|
|
21
|
+
|
|
22
|
+
## Параметры
|
|
23
|
+
|
|
24
|
+
- `value` (object): Ассоциативный массив, ключи которого необходимо преобразовать в верхний регистр.
|
|
25
|
+
|
|
26
|
+
## Возвращаемое значение
|
|
27
|
+
|
|
28
|
+
Возвращает новый ассоциативный массив с ключами в верхнем регистре. Если переданное значение
|
|
29
|
+
является списком, оно возвращается без изменений.
|
|
30
|
+
|
|
31
|
+
## Примеры использования
|
|
32
|
+
|
|
33
|
+
1. Преобразование ключей ассоциативного массива в верхний регистр:
|
|
34
|
+
|
|
35
|
+
```js
|
|
36
|
+
const assoc = { key1: 'value1', key2: 'value2' };
|
|
37
|
+
const result = array_key_to_upper_case(assoc);
|
|
38
|
+
console.log(result); // { KEY1: 'value1', KEY2: 'value2' }
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
2. Обработка списка (обычного массива):
|
|
42
|
+
|
|
43
|
+
```js
|
|
44
|
+
const list = [1, 2, 3];
|
|
45
|
+
const result = array_key_to_upper_case(list);
|
|
46
|
+
console.log(result); // [1, 2, 3]
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
3. Обработка значения, не являющегося массивом:
|
|
50
|
+
|
|
51
|
+
```js
|
|
52
|
+
try {
|
|
53
|
+
const result = array_key_to_upper_case('not an array');
|
|
54
|
+
} catch (e) {
|
|
55
|
+
console.error(e.message); // Параметр "array" должен быть массивом.
|
|
56
|
+
}
|
|
57
|
+
```
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
[Главная](../../../README.md) / [Помощники](../../helpers.md) / array_keys
|
|
2
|
+
|
|
3
|
+
[Исходный код](../../../src/helpers/array/array_keys.mjs)
|
|
4
|
+
|
|
5
|
+
# array_keys
|
|
6
|
+
|
|
7
|
+
`array_keys` — Возвращает массив ключей из переданного массива или объекта.
|
|
8
|
+
|
|
9
|
+
## Сигнатура функции
|
|
10
|
+
|
|
11
|
+
```ts
|
|
12
|
+
function array_keys(value: object): array;
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Описание
|
|
16
|
+
|
|
17
|
+
Функция `array_keys` используется для получения массива ключей из переданного массива или объекта.
|
|
18
|
+
Она возвращает массив, содержащий все ключи переданного массива или объекта.
|
|
19
|
+
|
|
20
|
+
## Параметры
|
|
21
|
+
|
|
22
|
+
- `value` (object): Исходный массив или объект.
|
|
23
|
+
|
|
24
|
+
## Возвращаемое значение
|
|
25
|
+
|
|
26
|
+
Возвращает массив, содержащий все ключи переданного массива или объекта.
|
|
27
|
+
|
|
28
|
+
## Примеры использования
|
|
29
|
+
|
|
30
|
+
1. Получение ключей из обычного массива:
|
|
31
|
+
|
|
32
|
+
```js
|
|
33
|
+
const array = [1, 2, 3];
|
|
34
|
+
const result = array_keys(array);
|
|
35
|
+
console.log(result); // ['0', '1', '2']
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
2. Получение ключей из ассоциативного массива:
|
|
39
|
+
|
|
40
|
+
```js
|
|
41
|
+
const array = { a: 1, b: 2, c: 3 };
|
|
42
|
+
const result = array_keys(array);
|
|
43
|
+
console.log(result); // ['a', 'b', 'c']
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
3. Обработка пустого массива:
|
|
47
|
+
|
|
48
|
+
```js
|
|
49
|
+
const array = [];
|
|
50
|
+
const result = array_keys(array);
|
|
51
|
+
console.log(result); // []
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
4. Обработка значений, не являющихся массивами или объектами:
|
|
55
|
+
|
|
56
|
+
```js
|
|
57
|
+
try {
|
|
58
|
+
const result = array_keys('not an array');
|
|
59
|
+
} catch (e) {
|
|
60
|
+
console.error(e.message); // Параметр "value" должен быть массивом.
|
|
61
|
+
}
|
|
62
|
+
```
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
[Главная](../../../README.md) / [Помощники](../../helpers.md) / array_map
|
|
2
|
+
|
|
3
|
+
[Исходный код](../../../src/helpers/array/array_map.mjs)
|
|
4
|
+
|
|
5
|
+
# array_map
|
|
6
|
+
|
|
7
|
+
`array_map` — Применяет функцию обратного вызова к каждому элементу массива.
|
|
8
|
+
|
|
9
|
+
## Сигнатура функции
|
|
10
|
+
|
|
11
|
+
```ts
|
|
12
|
+
function array_map(value: object, callback: function): object;
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Описание
|
|
16
|
+
|
|
17
|
+
Функция `array_map` используется для применения функции обратного вызова к каждому элементу массива.
|
|
18
|
+
Она возвращает новый массив, содержащий результаты применения функции обратного вызова к каждому
|
|
19
|
+
элементу исходного массива.
|
|
20
|
+
|
|
21
|
+
## Параметры
|
|
22
|
+
|
|
23
|
+
- `value` (object): Исходный массив.
|
|
24
|
+
- `callback` (function): Функция обратного вызова, применяемая к каждому элементу массива.
|
|
25
|
+
|
|
26
|
+
## Возвращаемое значение
|
|
27
|
+
|
|
28
|
+
Возвращает новый массив, содержащий результаты применения функции обратного вызова к каждому
|
|
29
|
+
элементу исходного массива.
|
|
30
|
+
|
|
31
|
+
## Примеры использования
|
|
32
|
+
|
|
33
|
+
1. Применение функции обратного вызова к обычному массиву:
|
|
34
|
+
|
|
35
|
+
```js
|
|
36
|
+
const array = [1, 2, 3];
|
|
37
|
+
const callback = (value) => value * 2;
|
|
38
|
+
const result = array_map(array, callback);
|
|
39
|
+
console.log(result); // [2, 4, 6]
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
2. Применение функции обратного вызова к ассоциативному массиву:
|
|
43
|
+
|
|
44
|
+
```js
|
|
45
|
+
const array = { a: 1, b: 2, c: 3 };
|
|
46
|
+
const callback = (value) => value * 2;
|
|
47
|
+
const result = array_map(array, callback);
|
|
48
|
+
console.log(result); // { a: 2, b: 4, c: 6 }
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
3. Обработка значений, не являющихся массивами:
|
|
52
|
+
|
|
53
|
+
```js
|
|
54
|
+
try {
|
|
55
|
+
const result = array_map('not an array', (value) => value * 2);
|
|
56
|
+
} catch (e) {
|
|
57
|
+
console.error(e.message); // Параметр "value" должен быть массивом.
|
|
58
|
+
}
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
4. Обработка значений, не являющихся функциями:
|
|
62
|
+
|
|
63
|
+
```js
|
|
64
|
+
try {
|
|
65
|
+
const result = array_map([1, 2, 3], 'not a function');
|
|
66
|
+
} catch (e) {
|
|
67
|
+
console.error(e.message); // Параметр "callback" должен быть функцией.
|
|
68
|
+
}
|
|
69
|
+
```
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
[Главная](../../../README.md) / [Помощники](../../helpers.md) / array_merge
|
|
2
|
+
|
|
3
|
+
[Исходный код](../../../src/helpers/array/array_merge.mjs)
|
|
4
|
+
|
|
5
|
+
# array_merge
|
|
6
|
+
|
|
7
|
+
`array_merge` — Объединяет несколько массивов в один.
|
|
8
|
+
|
|
9
|
+
## Сигнатура функции
|
|
10
|
+
|
|
11
|
+
```ts
|
|
12
|
+
function array_merge(...arrays: object[]): object;
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Описание
|
|
16
|
+
|
|
17
|
+
Функция `array_merge` используется для объединения нескольких массивов в один. Она поддерживает как
|
|
18
|
+
обычные массивы, так и ассоциативные массивы (объекты с ключами и значениями).
|
|
19
|
+
|
|
20
|
+
## Параметры
|
|
21
|
+
|
|
22
|
+
- `...arrays` (object[]): Массивы, которые необходимо объединить.
|
|
23
|
+
|
|
24
|
+
## Возвращаемое значение
|
|
25
|
+
|
|
26
|
+
Возвращает новый массив, содержащий элементы всех переданных массивов. Если все переданные массивы
|
|
27
|
+
являются обычными массивами, результатом будет обычный массив. Если хотя бы один из переданных
|
|
28
|
+
массивов является ассоциативным массивом, результатом будет ассоциативный массив.
|
|
29
|
+
|
|
30
|
+
## Примеры использования
|
|
31
|
+
|
|
32
|
+
1. Объединение обычных массивов:
|
|
33
|
+
|
|
34
|
+
```js
|
|
35
|
+
const array1 = [1, 2, 3];
|
|
36
|
+
const array2 = [4, 5, 6];
|
|
37
|
+
const result = array_merge(array1, array2);
|
|
38
|
+
console.log(result); // [1, 2, 3, 4, 5, 6]
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
2. Объединение ассоциативных массивов:
|
|
42
|
+
|
|
43
|
+
```js
|
|
44
|
+
const array1 = { a: 1, b: 2 };
|
|
45
|
+
const array2 = { c: 3, d: 4 };
|
|
46
|
+
const result = array_merge(array1, array2);
|
|
47
|
+
console.log(result); // { a: 1, b: 2, c: 3, d: 4 }
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
3. Объединение обычных и ассоциативных массивов:
|
|
51
|
+
|
|
52
|
+
```js
|
|
53
|
+
const array1 = [1, 2, 3];
|
|
54
|
+
const array2 = { a: 4, b: 5 };
|
|
55
|
+
const result = array_merge(array1, array2);
|
|
56
|
+
console.log(result); // { 0: 1, 1: 2, 2: 3, a: 4, b: 5 }
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
4. Обработка значений, не являющихся массивами:
|
|
60
|
+
|
|
61
|
+
```js
|
|
62
|
+
try {
|
|
63
|
+
const result = array_merge('not an array');
|
|
64
|
+
} catch (e) {
|
|
65
|
+
console.error(e.message); // Параметр "arrays" должен быть массивом.
|
|
66
|
+
}
|
|
67
|
+
```
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
[Главная](../../../README.md) / [Помощники](../../helpers.md) / array_merge_recursive
|
|
2
|
+
|
|
3
|
+
[Исходный код](../../../src/helpers/array/array_merge_recursive.mjs)
|
|
4
|
+
|
|
5
|
+
# array_merge_recursive
|
|
6
|
+
|
|
7
|
+
`array_merge_recursive` — Объединяет несколько массивов рекурсивно.
|
|
8
|
+
|
|
9
|
+
## Сигнатура функции
|
|
10
|
+
|
|
11
|
+
```ts
|
|
12
|
+
function array_merge_recursive(...arrays: object[]): object;
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Описание
|
|
16
|
+
|
|
17
|
+
Функция `array_merge_recursive` используется для рекурсивного объединения нескольких массивов в
|
|
18
|
+
один. Она поддерживает как обычные массивы, так и ассоциативные массивы (объекты с ключами и
|
|
19
|
+
значениями).
|
|
20
|
+
|
|
21
|
+
## Параметры
|
|
22
|
+
|
|
23
|
+
- `...arrays` (object[]): Массивы, которые необходимо объединить.
|
|
24
|
+
|
|
25
|
+
## Возвращаемое значение
|
|
26
|
+
|
|
27
|
+
Возвращает новый массив, содержащий элементы всех переданных массивов. Если все переданные массивы
|
|
28
|
+
являются обычными массивами, результатом будет обычный массив. Если хотя бы один из переданных
|
|
29
|
+
массивов является ассоциативным массивом, результатом будет ассоциативный массив.
|
|
30
|
+
|
|
31
|
+
## Примеры использования
|
|
32
|
+
|
|
33
|
+
1. Объединение обычных массивов:
|
|
34
|
+
|
|
35
|
+
```js
|
|
36
|
+
const array1 = [1, 2, 3];
|
|
37
|
+
const array2 = [4, 5, 6];
|
|
38
|
+
const result = array_merge_recursive(array1, array2);
|
|
39
|
+
console.log(result); // [1, 2, 3, 4, 5, 6]
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
2. Объединение ассоциативных массивов:
|
|
43
|
+
|
|
44
|
+
```js
|
|
45
|
+
const array1 = { a: 1, b: 2 };
|
|
46
|
+
const array2 = { b: 3, c: 4 };
|
|
47
|
+
const result = array_merge_recursive(array1, array2);
|
|
48
|
+
console.log(result); // { a: 1, b: [2, 3], c: 4 }
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
3. Объединение обычных и ассоциативных массивов:
|
|
52
|
+
|
|
53
|
+
```js
|
|
54
|
+
const array1 = [1, 2, 3];
|
|
55
|
+
const array2 = { a: 4, b: 5 };
|
|
56
|
+
const result = array_merge_recursive(array1, array2);
|
|
57
|
+
console.log(result); // { 0: 1, 1: 2, 2: 3, a: 4, b: 5 }
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
4. Объединение вложенных массивов:
|
|
61
|
+
|
|
62
|
+
```js
|
|
63
|
+
const array1 = { a: { b: 1 } };
|
|
64
|
+
const array2 = { a: { c: 2 } };
|
|
65
|
+
const result = array_merge_recursive(array1, array2);
|
|
66
|
+
console.log(result); // { a: { b: 1, c: 2 } }
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
5. Объединение массивов с одинаковыми ключами:
|
|
70
|
+
|
|
71
|
+
```js
|
|
72
|
+
const array1 = { a: { b: 1 } };
|
|
73
|
+
const array2 = { a: { b: 2 } };
|
|
74
|
+
const result = array_merge_recursive(array1, array2);
|
|
75
|
+
console.log(result); // { a: { b: [1, 2] } }
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
6. Обработка значений, не являющихся массивами:
|
|
79
|
+
|
|
80
|
+
```js
|
|
81
|
+
try {
|
|
82
|
+
const result = array_merge_recursive('not an array');
|
|
83
|
+
} catch (e) {
|
|
84
|
+
console.error(e.message); // Параметр "arrays" должен быть массивом.
|
|
85
|
+
}
|
|
86
|
+
```
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
[Главная](../../../README.md) / [Помощники](../../helpers.md) / array_pad
|
|
2
|
+
|
|
3
|
+
[Исходный код](../../../src/helpers/array/array_pad.mjs)
|
|
4
|
+
|
|
5
|
+
# array_pad
|
|
6
|
+
|
|
7
|
+
`array_pad` — Дополняет массив до заданной длины указанным значением.
|
|
8
|
+
|
|
9
|
+
## Сигнатура функции
|
|
10
|
+
|
|
11
|
+
```ts
|
|
12
|
+
function array_pad(arr: object, length: number, value: any): object;
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Описание
|
|
16
|
+
|
|
17
|
+
Функция `array_pad` используется для дополнения массива до заданной длины указанным значением. Если
|
|
18
|
+
длина положительная, элементы добавляются в конец массива. Если длина отрицательная, элементы
|
|
19
|
+
добавляются в начало массива.
|
|
20
|
+
|
|
21
|
+
## Параметры
|
|
22
|
+
|
|
23
|
+
- `arr` (object): Исходный массив.
|
|
24
|
+
- `length` (number): Желаемая длина массива.
|
|
25
|
+
- `value` (any): Значение для дополнения массива.
|
|
26
|
+
|
|
27
|
+
## Возвращаемое значение
|
|
28
|
+
|
|
29
|
+
Возвращает новый массив, дополненный до заданной длины указанным значением.
|
|
30
|
+
|
|
31
|
+
## Примеры использования
|
|
32
|
+
|
|
33
|
+
1. Дополнение массива до длины 5:
|
|
34
|
+
|
|
35
|
+
```js
|
|
36
|
+
const array = [1, 2, 3];
|
|
37
|
+
const result = array_pad(array, 5, 0);
|
|
38
|
+
console.log(result); // [1, 2, 3, 0, 0]
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
2. Дополнение массива до длины -5:
|
|
42
|
+
|
|
43
|
+
```js
|
|
44
|
+
const array = [1, 2, 3];
|
|
45
|
+
const result = array_pad(array, -5, 0);
|
|
46
|
+
console.log(result); // [0, 0, 1, 2, 3]
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
3. Возвращение массива без изменений, если длина меньше или равна текущей длине массива:
|
|
50
|
+
|
|
51
|
+
```js
|
|
52
|
+
const array = [1, 2, 3];
|
|
53
|
+
const result = array_pad(array, 3, 0);
|
|
54
|
+
console.log(result); // [1, 2, 3]
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
4. Дополнение пустого массива:
|
|
58
|
+
|
|
59
|
+
```js
|
|
60
|
+
const array = [];
|
|
61
|
+
const result = array_pad(array, 3, 0);
|
|
62
|
+
console.log(result); // [0, 0, 0]
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
5. Обработка значений, не являющихся массивами:
|
|
66
|
+
|
|
67
|
+
```js
|
|
68
|
+
try {
|
|
69
|
+
const result = array_pad('not an array', 5, 0);
|
|
70
|
+
} catch (e) {
|
|
71
|
+
console.error(e.message); // Параметр "arr" должен быть массивом.
|
|
72
|
+
}
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
6. Обработка значений длины, не являющихся числами:
|
|
76
|
+
|
|
77
|
+
```js
|
|
78
|
+
try {
|
|
79
|
+
const result = array_pad([1, 2, 3], 'not a number', 0);
|
|
80
|
+
} catch (e) {
|
|
81
|
+
console.error(e.message); // Параметр "length" должен быть целым числом.
|
|
82
|
+
}
|
|
83
|
+
```
|