@rogolev/value 0.0.1 → 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (176) hide show
  1. package/.prettierignore +4 -4
  2. package/CHANGELOG.md +68 -56
  3. package/LICENSE +41 -41
  4. package/README.md +100 -91
  5. package/babel.config.json +20 -20
  6. package/docs/classes/Convert/toArray.md +100 -0
  7. package/docs/classes/Convert/toAssoc.md +90 -0
  8. package/docs/classes/Convert/toBool.md +72 -0
  9. package/docs/classes/Convert/toBoolean.md +72 -0
  10. package/docs/classes/Convert/toFloat.md +69 -0
  11. package/docs/classes/Convert/toInt.md +86 -0
  12. package/docs/classes/Convert/toInteger.md +86 -0
  13. package/docs/classes/Convert/toList.md +73 -0
  14. package/docs/classes/Convert/toObject.md +76 -0
  15. package/docs/classes/Convert/toString.md +125 -0
  16. package/docs/classes/Convert.md +44 -0
  17. package/docs/classes/Type/isArray.md +106 -0
  18. package/docs/classes/Type/isAssoc.md +57 -0
  19. package/docs/classes/Type/isBigInt.md +49 -0
  20. package/docs/classes/Type/isBool.md +51 -0
  21. package/docs/classes/Type/isBoolean.md +51 -0
  22. package/docs/classes/Type/isClass.md +60 -0
  23. package/docs/classes/Type/isEmpty.md +53 -0
  24. package/docs/classes/Type/isFloat.md +77 -0
  25. package/docs/classes/Type/isFunction.md +64 -0
  26. package/docs/classes/Type/isInfinity.md +59 -0
  27. package/docs/classes/Type/isInt.md +77 -0
  28. package/docs/classes/Type/isInteger.md +77 -0
  29. package/docs/classes/Type/isList.md +49 -0
  30. package/docs/classes/Type/isNaN.md +57 -0
  31. package/docs/classes/Type/isNull.md +49 -0
  32. package/docs/classes/Type/isNumber.md +60 -0
  33. package/docs/classes/Type/isNumeric.md +58 -0
  34. package/docs/classes/Type/isObject.md +53 -0
  35. package/docs/classes/Type/isScalar.md +54 -0
  36. package/docs/classes/Type/isString.md +54 -0
  37. package/docs/classes/Type/isSymbol.md +56 -0
  38. package/docs/classes/Type/isUndefined.md +52 -0
  39. package/docs/classes/Type.md +74 -0
  40. package/docs/classes.md +9 -0
  41. package/docs/helpers/array.md +80 -80
  42. package/docs/helpers/empty.md +77 -77
  43. package/docs/helpers/gettype.md +69 -69
  44. package/docs/helpers/is_array.md +105 -105
  45. package/docs/helpers/is_assoc.md +59 -59
  46. package/docs/helpers/is_bigint.md +57 -57
  47. package/docs/helpers/is_bool.md +50 -50
  48. package/docs/helpers/is_boolean.md +50 -50
  49. package/docs/helpers/is_class.md +73 -73
  50. package/docs/helpers/is_float.md +71 -71
  51. package/docs/helpers/is_function.md +62 -62
  52. package/docs/helpers/is_infinity.md +61 -61
  53. package/docs/helpers/is_int.md +81 -81
  54. package/docs/helpers/is_integer.md +82 -82
  55. package/docs/helpers/is_list.md +51 -51
  56. package/docs/helpers/is_nan.md +59 -59
  57. package/docs/helpers/is_null.md +49 -49
  58. package/docs/helpers/is_number.md +67 -67
  59. package/docs/helpers/is_numeric.md +76 -76
  60. package/docs/helpers/is_object.md +69 -69
  61. package/docs/helpers/is_scalar.md +60 -60
  62. package/docs/helpers/is_string.md +58 -58
  63. package/docs/helpers/is_symbol.md +58 -58
  64. package/docs/helpers/is_undefined.md +56 -56
  65. package/docs/helpers/print.md +187 -187
  66. package/docs/helpers/print_type.md +225 -225
  67. package/docs/helpers/settype.md +78 -78
  68. package/docs/helpers/to_array.md +106 -106
  69. package/docs/helpers/to_assoc.md +91 -91
  70. package/docs/helpers/to_bool.md +76 -76
  71. package/docs/helpers/to_boolean.md +77 -77
  72. package/docs/helpers/to_float.md +70 -70
  73. package/docs/helpers/to_int.md +87 -87
  74. package/docs/helpers/to_integer.md +87 -87
  75. package/docs/helpers/to_list.md +47 -47
  76. package/docs/helpers/to_object.md +76 -76
  77. package/docs/helpers/to_string.md +134 -134
  78. package/docs/helpers.md +51 -51
  79. package/docs/types/NaN.md +30 -30
  80. package/docs/types/array.md +252 -252
  81. package/docs/types/bigint.md +34 -34
  82. package/docs/types/boolean.md +47 -47
  83. package/docs/types/class.md +36 -36
  84. package/docs/types/float.md +35 -35
  85. package/docs/types/function.md +121 -121
  86. package/docs/types/infinity.md +32 -32
  87. package/docs/types/integer.md +35 -35
  88. package/docs/types/null.md +23 -23
  89. package/docs/types/object.md +62 -62
  90. package/docs/types/string.md +33 -33
  91. package/docs/types/symbol.md +29 -29
  92. package/docs/types/undefined.md +25 -25
  93. package/docs/types.md +44 -44
  94. package/eslint.config.mjs +1664 -1664
  95. package/index.mjs +40 -37
  96. package/jest.config.mjs +31 -31
  97. package/package.json +48 -47
  98. package/prettier.config.mjs +224 -224
  99. package/src/classes/Convert.mjs +819 -0
  100. package/src/classes/Type.mjs +1285 -0
  101. package/src/helpers/array.mjs +107 -107
  102. package/src/helpers/empty.mjs +70 -70
  103. package/src/helpers/gettype.mjs +133 -133
  104. package/src/helpers/is_array.mjs +128 -128
  105. package/src/helpers/is_assoc.mjs +51 -51
  106. package/src/helpers/is_bigint.mjs +47 -47
  107. package/src/helpers/is_bool.mjs +43 -43
  108. package/src/helpers/is_boolean.mjs +43 -43
  109. package/src/helpers/is_class.mjs +87 -87
  110. package/src/helpers/is_float.mjs +67 -67
  111. package/src/helpers/is_function.mjs +74 -74
  112. package/src/helpers/is_infinity.mjs +52 -52
  113. package/src/helpers/is_int.mjs +57 -57
  114. package/src/helpers/is_integer.mjs +74 -74
  115. package/src/helpers/is_list.mjs +43 -43
  116. package/src/helpers/is_nan.mjs +51 -51
  117. package/src/helpers/is_null.mjs +37 -37
  118. package/src/helpers/is_number.mjs +49 -49
  119. package/src/helpers/is_numeric.mjs +64 -64
  120. package/src/helpers/is_object.mjs +72 -72
  121. package/src/helpers/is_scalar.mjs +45 -45
  122. package/src/helpers/is_string.mjs +46 -46
  123. package/src/helpers/is_symbol.mjs +46 -46
  124. package/src/helpers/is_undefined.mjs +44 -44
  125. package/src/helpers/print.mjs +245 -245
  126. package/src/helpers/print_type.mjs +261 -261
  127. package/src/helpers/settype.mjs +101 -101
  128. package/src/helpers/to_array.mjs +118 -118
  129. package/src/helpers/to_assoc.mjs +98 -98
  130. package/src/helpers/to_bool.mjs +68 -68
  131. package/src/helpers/to_boolean.mjs +64 -64
  132. package/src/helpers/to_float.mjs +72 -72
  133. package/src/helpers/to_int.mjs +93 -93
  134. package/src/helpers/to_integer.mjs +81 -81
  135. package/src/helpers/to_list.mjs +56 -56
  136. package/src/helpers/to_object.mjs +94 -94
  137. package/src/helpers/to_string.mjs +157 -157
  138. package/tests/classes/Convert.test.mjs +399 -0
  139. package/tests/classes/Type.test.mjs +1263 -0
  140. package/tests/helpers/array.test.mjs +58 -58
  141. package/tests/helpers/empty.test.mjs +22 -22
  142. package/tests/helpers/gettype.test.mjs +74 -74
  143. package/tests/helpers/is_array.test.mjs +404 -404
  144. package/tests/helpers/is_assoc.test.mjs +42 -42
  145. package/tests/helpers/is_bigint.test.mjs +51 -51
  146. package/tests/helpers/is_bool.test.mjs +43 -43
  147. package/tests/helpers/is_boolean.test.mjs +43 -43
  148. package/tests/helpers/is_class.test.mjs +84 -84
  149. package/tests/helpers/is_float.test.mjs +87 -87
  150. package/tests/helpers/is_function.test.mjs +83 -83
  151. package/tests/helpers/is_infinity.test.mjs +46 -46
  152. package/tests/helpers/is_int.test.mjs +45 -45
  153. package/tests/helpers/is_integer.test.mjs +64 -64
  154. package/tests/helpers/is_list.test.mjs +42 -42
  155. package/tests/helpers/is_nan.test.mjs +43 -43
  156. package/tests/helpers/is_null.test.mjs +17 -17
  157. package/tests/helpers/is_number.test.mjs +25 -25
  158. package/tests/helpers/is_numeric.test.mjs +30 -30
  159. package/tests/helpers/is_object.test.mjs +52 -52
  160. package/tests/helpers/is_scalar.test.mjs +21 -21
  161. package/tests/helpers/is_string.test.mjs +20 -20
  162. package/tests/helpers/is_symbol.test.mjs +20 -20
  163. package/tests/helpers/is_undefined.test.mjs +18 -18
  164. package/tests/helpers/print.test.mjs +62 -62
  165. package/tests/helpers/print_type.test.mjs +62 -62
  166. package/tests/helpers/settype.test.mjs +34 -34
  167. package/tests/helpers/to_array.test.mjs +38 -38
  168. package/tests/helpers/to_assoc.test.mjs +33 -33
  169. package/tests/helpers/to_bool.test.mjs +51 -51
  170. package/tests/helpers/to_boolean.test.mjs +51 -51
  171. package/tests/helpers/to_float.test.mjs +26 -26
  172. package/tests/helpers/to_int.test.mjs +48 -48
  173. package/tests/helpers/to_integer.test.mjs +48 -48
  174. package/tests/helpers/to_list.test.mjs +32 -32
  175. package/tests/helpers/to_object.test.mjs +36 -36
  176. package/tests/helpers/to_string.test.mjs +71 -71
@@ -0,0 +1,54 @@
1
+ [Главная](../../../README.md) / [Классы](../../classes.md) / [Type](../Type.md) / isString
2
+
3
+ [Исходный код](../../../src/classes/Type.mjs)
4
+
5
+ # Type.isString
6
+
7
+ `Type.isString` — Проверяет, является ли значение строкой.
8
+
9
+ ## Сигнатура метода
10
+
11
+ ```ts
12
+ static isString(value: any): boolean;
13
+ ```
14
+
15
+ ## Описание
16
+
17
+ Метод `Type.isString` проверяет, является ли переданное значение строкой.
18
+
19
+ Он использует оператор `typeof` для проверки типа значения.
20
+
21
+ Метод возвращает `false` для значений других типов, таких как числа, объекты или массивы.
22
+
23
+ ## Параметры
24
+
25
+ - `value` (any)
26
+
27
+ Значение, которое необходимо проверить.
28
+
29
+ ## Возвращаемое значение
30
+
31
+ Возвращает `true`, если значение является строкой, и `false` в противном случае.
32
+
33
+ ## Примеры использования
34
+
35
+ 1. Проверка строковых значений:
36
+
37
+ ```js
38
+ Type.isString('hello'); // true
39
+ Type.isString(''); // true
40
+ Type.isString(`template string`); // true
41
+ ```
42
+
43
+ 2. Проверка значений других типов:
44
+
45
+ ```js
46
+ Type.isString(42); // false (число)
47
+ Type.isString(true); // false (логическое значение)
48
+ Type.isString(null); // false
49
+ Type.isString(undefined); // false
50
+ Type.isString({}); // false (объект)
51
+ Type.isString([]); // false (массив)
52
+ Type.isString(() => {}); // false (функция)
53
+ ```
54
+
@@ -0,0 +1,56 @@
1
+ [Главная](../../../README.md) / [Классы](../../classes.md) / [Type](../Type.md) / isSymbol
2
+
3
+ [Исходный код](../../../src/classes/Type.mjs)
4
+
5
+ # Type.isSymbol
6
+
7
+ `Type.isSymbol` — Проверяет, является ли значение символом.
8
+
9
+ ## Сигнатура метода
10
+
11
+ ```ts
12
+ static isSymbol(value: any): boolean;
13
+ ```
14
+
15
+ ## Описание
16
+
17
+ Метод `Type.isSymbol` предназначен для проверки, является ли переданное значение символом.
18
+
19
+ Он проверяет:
20
+
21
+ 1. Что значение имеет тип `symbol`.
22
+
23
+ Метод возвращает `false` для всех значений, не принадлежащих типу `symbol`.
24
+
25
+ ## Параметры
26
+
27
+ - `value` (any)
28
+
29
+ Проверяемая переменная.
30
+
31
+ ## Возвращаемое значение
32
+
33
+ Возвращает `true`, если значение является символом, иначе `false`.
34
+
35
+ ## Примеры использования
36
+
37
+ 1. Проверка символов:
38
+
39
+ ```js
40
+ Type.isSymbol(Symbol('symbol')); // true
41
+ Type.isSymbol(Symbol.iterator); // true
42
+ ```
43
+
44
+ 2. Проверка значений других типов:
45
+
46
+ ```js
47
+ Type.isSymbol('hello'); // false (строка)
48
+ Type.isSymbol(42); // false (число)
49
+ Type.isSymbol(true); // false (логическое значение)
50
+ Type.isSymbol(null); // false
51
+ Type.isSymbol(undefined); // false
52
+ Type.isSymbol({}); // false (объект)
53
+ Type.isSymbol([]); // false (массив)
54
+ Type.isSymbol(() => {}); // false (функция)
55
+ ```
56
+
@@ -0,0 +1,52 @@
1
+ [Главная](../../../README.md) / [Классы](../../classes.md) / [Type](../Type.md) / isUndefined
2
+
3
+ [Исходный код](../../../src/classes/Type.mjs)
4
+
5
+ # Type.isUndefined
6
+
7
+ `Type.isUndefined` — Проверяет, является ли значение `undefined`.
8
+
9
+ ## Сигнатура метода
10
+
11
+ ```ts
12
+ static isUndefined(value: any): boolean;
13
+ ```
14
+
15
+ ## Описание
16
+
17
+ Метод `Type.isUndefined` проверяет, является ли переданное значение `undefined`.
18
+
19
+ Он использует оператор `typeof` для проверки типа значения.
20
+
21
+ Метод возвращает `false` для всех значений, не принадлежащих типу `undefined`.
22
+
23
+ ## Параметры
24
+
25
+ - `value` (any)
26
+
27
+ Проверяемая переменная.
28
+
29
+ ## Возвращаемое значение
30
+
31
+ Возвращает `true`, если значение является `undefined`, иначе `false`.
32
+
33
+ ## Примеры использования
34
+
35
+ 1. Проверка значения `undefined`:
36
+
37
+ ```js
38
+ Type.isUndefined(undefined); // true
39
+ ```
40
+
41
+ 2. Проверка значений других типов:
42
+
43
+ ```js
44
+ Type.isUndefined(null); // false
45
+ Type.isUndefined(42); // false (число)
46
+ Type.isUndefined('hello'); // false (строка)
47
+ Type.isUndefined(true); // false (логическое значение)
48
+ Type.isUndefined({}); // false (объект)
49
+ Type.isUndefined([]); // false (массив)
50
+ Type.isUndefined(() => {}); // false (функция)
51
+ ```
52
+
@@ -0,0 +1,74 @@
1
+ [Главная](../../README.md) / [Классы](../classes.md) / Type
2
+
3
+ [Исходный код](../../src/classes/Type.mjs)
4
+
5
+ # Type
6
+
7
+ `Type` — Класс, предоставляющий методы для проверки типов данных в JavaScript.
8
+
9
+ ## Сигнатура класса
10
+
11
+ ```ts
12
+ class Type {
13
+ static isEmpty(value: any): boolean;
14
+ static isArray(value: any): boolean;
15
+ static isAssoc(value: any): boolean;
16
+ static isBigInt(value: any): boolean;
17
+ static isBool(value: any): boolean;
18
+ static isBoolean(value: any): boolean;
19
+ static isClass(value: any): boolean;
20
+ static isFloat(value: any): boolean;
21
+ static isFunction(value: any): boolean;
22
+ static isInfinity(value: any): boolean;
23
+ static isInt(value: any): boolean;
24
+ static isInteger(value: any): boolean;
25
+ static isList(value: any): boolean;
26
+ static isNaN(value: any): boolean;
27
+ static isNull(value: any): boolean;
28
+ static isNumber(value: any): boolean;
29
+ static isNumeric(value: any): boolean;
30
+ static isObject(value: any): boolean;
31
+ static isScalar(value: any): boolean;
32
+ static isString(value: any): boolean;
33
+ static isSymbol(value: any): boolean;
34
+ static isUndefined(value: any): boolean;
35
+ }
36
+ ```
37
+
38
+ ## Описание
39
+
40
+ Класс `Type` включает в себя статические методы, которые позволяют проверять типы различных
41
+ значений. Эти методы охватывают широкий спектр типов данных, включая примитивы, объекты, массивы,
42
+ функции и специальные значения.
43
+
44
+ ### Методы
45
+
46
+ - [isEmpty](./Type/isEmpty.md) — Проверяет, является ли переменная пустой.
47
+ - [isArray](./Type/isArray.md) — Проверяет, является ли переданное значение массивом или
48
+ ассоциативным массивом.
49
+ - [isAssoc](./Type/isAssoc.md) — Проверяет, является ли значение ассоциативным массивом.
50
+ - [isBigInt](./Type/isBigInt.md) — Проверяет, является ли значение типом `bigint`.
51
+ - [isBool](./Type/isBool.md) — Проверяет, является ли переданное значение логическим типом
52
+ (`boolean`).
53
+ - [isBoolean](./Type/isBoolean.md) — Проверяет, является ли переданное значение логическим
54
+ типом (`boolean`).
55
+ - [isClass](./Type/isClass.md) — Проверяет, является ли переданная переменная классом.
56
+ - [isFloat](./Type/isFloat.md) — Проверяет, является ли значение числом с плавающей точкой.
57
+ - [isFunction](./Type/isFunction.md) — Проверяет, что значение является функцией, исключая
58
+ классы.
59
+ - [isInfinity](./Type/isInfinity.md) — Проверяет, является ли значение бесконечностью
60
+ (`Infinity` или `-Infinity`).
61
+ - [isInt](./Type/isInt.md) — Проверяет, является ли значение целым числом.
62
+ - [isInteger](./Type/isInteger.md) — Проверяет, является ли значение целым числом.
63
+ - [isList](./Type/isList.md) — Проверяет, является ли значение списком.
64
+ - [isNaN](./Type/isNaN.md) — Проверяет, является ли значение NaN.
65
+ - [isNull](./Type/isNull.md) — Проверяет, является ли значение `null`.
66
+ - [isNumber](./Type/isNumber.md) — Проверяет, является ли значение числом.
67
+ - [isNumeric](./Type/isNumeric.md) — Проверяет, является ли значение числом или числовой
68
+ строкой.
69
+ - [isObject](./Type/isObject.md) — Проверяет, является ли переданная переменная объектом.
70
+ - [isScalar](./Type/isScalar.md) — Проверяет, является ли значение скалярным.
71
+ - [isString](./Type/isString.md) — Проверяет, является ли значение строкой.
72
+ - [isSymbol](./Type/isSymbol.md) — Проверяет, является ли значение символом.
73
+ - [isUndefined](./Type/isUndefined.md) — Проверяет, является ли значение `undefined`.
74
+
@@ -0,0 +1,9 @@
1
+ [Главная](../../README.md) / Классы
2
+
3
+ # Классы
4
+
5
+ - [Convert](./classes/Convert.md) — Класс, предоставляющий методы для преобразования различных
6
+ типов данных в JavaScript.
7
+ - [Type](./classes/Type.md) — Класс, предоставляющий методы для проверки типов данных в
8
+ JavaScript.
9
+
@@ -1,80 +1,80 @@
1
- [Главная](../../README.md) / [Помощники](../helpers.md) / array
2
-
3
- [Исходный код](../../src/helpers/array.mjs)
4
-
5
- # array
6
-
7
- `array` — Создаёт массив из переданных значений, обрабатывая ассоциативные массивы (объекты с
8
- ключами).
9
-
10
- ## Сигнатура функции
11
-
12
- ```ts
13
- function array(...values: any[]): Array<any> | Object;
14
- ```
15
-
16
- ## Описание
17
-
18
- Функция принимает произвольное количество аргументов и возвращает массив, содержащий переданные
19
- значения. Если среди переданных значений есть ассоциативные массивы (объекты, не являющиеся
20
- массивами и с ненулевым прототипом), они преобразуются:
21
-
22
- - Создаётся новый объект без прототипа.
23
- - Добавляются все свойства исходного объекта.
24
- - Добавляется итератор, позволяющий использовать объект в цикле `for-of` для получения пар
25
- `[ключ, значение]`.
26
-
27
- Если передано только одно значение, и это массив, функция возвращает его напрямую.
28
-
29
- ## Параметры
30
-
31
- - `values` (any[])
32
-
33
- Один или несколько элементов, которые могут быть массивами, объектами или другими значениями.
34
-
35
- ## Возвращаемое значение
36
-
37
- Массив, содержащий переданные значения, с преобразованием ассоциативных массивов. Если передано одно
38
- значение и это массив, возвращается он сам.
39
-
40
- ## Примеры использования
41
-
42
- 1. Простые массивы:
43
-
44
- ```js
45
- const result = array([1, 2, 3]);
46
- console.log(result); // [1, 2, 3]
47
- ```
48
-
49
- 2. Ассоциативные массивы (объекты с ключами и значениями):
50
-
51
- ```js
52
- const result = array({ foo: 'bar', baz: 42 });
53
- for (const [key, value] of result[0]) {
54
- console.log(key, value);
55
- }
56
- // Вывод:
57
- // foo bar
58
- // baz 42
59
- ```
60
-
61
- 3. Смешанные значения:
62
-
63
- ```js
64
- const result = array([1, 2, 3], { foo: 'bar' }, 'hello');
65
- console.log(result);
66
- // Вывод: [[1, 2, 3], { foo: 'bar' }, 'hello']
67
- ```
68
-
69
- 4. Объекты, созданные без прототипа:
70
-
71
- ```js
72
- const noProtoObject = Object.create(null);
73
- noProtoObject.foo = 'bar';
74
- const result = array(noProtoObject);
75
- for (const [key, value] of result[0]) {
76
- console.log(key, value);
77
- }
78
- // Вывод:
79
- // foo bar
80
- ```
1
+ [Главная](../../README.md) / [Помощники](../helpers.md) / array
2
+
3
+ [Исходный код](../../src/helpers/array.mjs)
4
+
5
+ # array
6
+
7
+ `array` &mdash; Создаёт массив из переданных значений, обрабатывая ассоциативные массивы (объекты с
8
+ ключами).
9
+
10
+ ## Сигнатура функции
11
+
12
+ ```ts
13
+ function array(...values: any[]): Array<any> | Object;
14
+ ```
15
+
16
+ ## Описание
17
+
18
+ Функция принимает произвольное количество аргументов и возвращает массив, содержащий переданные
19
+ значения. Если среди переданных значений есть ассоциативные массивы (объекты, не являющиеся
20
+ массивами и с ненулевым прототипом), они преобразуются:
21
+
22
+ - Создаётся новый объект без прототипа.
23
+ - Добавляются все свойства исходного объекта.
24
+ - Добавляется итератор, позволяющий использовать объект в цикле `for-of` для получения пар
25
+ `[ключ, значение]`.
26
+
27
+ Если передано только одно значение, и это массив, функция возвращает его напрямую.
28
+
29
+ ## Параметры
30
+
31
+ - `values` (any[])
32
+
33
+ Один или несколько элементов, которые могут быть массивами, объектами или другими значениями.
34
+
35
+ ## Возвращаемое значение
36
+
37
+ Массив, содержащий переданные значения, с преобразованием ассоциативных массивов. Если передано одно
38
+ значение и это массив, возвращается он сам.
39
+
40
+ ## Примеры использования
41
+
42
+ 1. Простые массивы:
43
+
44
+ ```js
45
+ const result = array([1, 2, 3]);
46
+ console.log(result); // [1, 2, 3]
47
+ ```
48
+
49
+ 2. Ассоциативные массивы (объекты с ключами и значениями):
50
+
51
+ ```js
52
+ const result = array({ foo: 'bar', baz: 42 });
53
+ for (const [key, value] of result[0]) {
54
+ console.log(key, value);
55
+ }
56
+ // Вывод:
57
+ // foo bar
58
+ // baz 42
59
+ ```
60
+
61
+ 3. Смешанные значения:
62
+
63
+ ```js
64
+ const result = array([1, 2, 3], { foo: 'bar' }, 'hello');
65
+ console.log(result);
66
+ // Вывод: [[1, 2, 3], { foo: 'bar' }, 'hello']
67
+ ```
68
+
69
+ 4. Объекты, созданные без прототипа:
70
+
71
+ ```js
72
+ const noProtoObject = Object.create(null);
73
+ noProtoObject.foo = 'bar';
74
+ const result = array(noProtoObject);
75
+ for (const [key, value] of result[0]) {
76
+ console.log(key, value);
77
+ }
78
+ // Вывод:
79
+ // foo bar
80
+ ```
@@ -1,77 +1,77 @@
1
- [Главная](../../README.md) / [Помощники](../helpers.md) / empty
2
-
3
- [Исходный код](../../src/helpers/empty.mjs)
4
-
5
- # `empty`
6
-
7
- `empty` &mdash; Проверяет, является ли переменная пустой.
8
-
9
- ## Сигнатура функции
10
-
11
- ```ts
12
- function empty(value: any): boolean;
13
- ```
14
-
15
- ## Описание
16
-
17
- Функция `empty` используется для проверки, является ли переменная пустой. Пустыми считаются значения
18
- `null`, `undefined`, пустая строка, `0`, `false`, пустой массив и пустой объект (ассоциативный
19
- массив).
20
-
21
- ## Параметры
22
-
23
- - `value` (any)
24
-
25
- Переменная, которую необходимо проверить на пустоту.
26
-
27
- ## Возвращаемое значение
28
-
29
- Функция возвращает:
30
-
31
- - `true`, если переменная пустая, и `false` в противном случае.
32
-
33
- ## Примеры использования
34
-
35
- ### Пример 1: Проверка пустых значений
36
-
37
- ```js
38
- const result1 = empty(null);
39
- // Результат: true
40
-
41
- const result2 = empty(undefined);
42
- // Результат: true
43
-
44
- const result3 = empty('');
45
- // Результат: true
46
-
47
- const result4 = empty(0);
48
- // Результат: true
49
-
50
- const result5 = empty(false);
51
- // Результат: true
52
-
53
- const result6 = empty([]);
54
- // Результат: true
55
-
56
- const result7 = empty({});
57
- // Результат: true
58
- ```
59
-
60
- ### Пример 2: Проверка непустых значений
61
-
62
- ```js
63
- const result1 = empty('example');
64
- // Результат: false
65
-
66
- const result2 = empty(123);
67
- // Результат: false
68
-
69
- const result3 = empty(true);
70
- // Результат: false
71
-
72
- const result4 = empty([1, 2, 3]);
73
- // Результат: false
74
-
75
- const result5 = empty({ key: 'value' });
76
- // Результат: false
77
- ```
1
+ [Главная](../../README.md) / [Помощники](../helpers.md) / empty
2
+
3
+ [Исходный код](../../src/helpers/empty.mjs)
4
+
5
+ # `empty`
6
+
7
+ `empty` &mdash; Проверяет, является ли переменная пустой.
8
+
9
+ ## Сигнатура функции
10
+
11
+ ```ts
12
+ function empty(value: any): boolean;
13
+ ```
14
+
15
+ ## Описание
16
+
17
+ Функция `empty` используется для проверки, является ли переменная пустой. Пустыми считаются значения
18
+ `null`, `undefined`, пустая строка, `0`, `false`, пустой массив и пустой объект (ассоциативный
19
+ массив).
20
+
21
+ ## Параметры
22
+
23
+ - `value` (any)
24
+
25
+ Переменная, которую необходимо проверить на пустоту.
26
+
27
+ ## Возвращаемое значение
28
+
29
+ Функция возвращает:
30
+
31
+ - `true`, если переменная пустая, и `false` в противном случае.
32
+
33
+ ## Примеры использования
34
+
35
+ ### Пример 1: Проверка пустых значений
36
+
37
+ ```js
38
+ const result1 = empty(null);
39
+ // Результат: true
40
+
41
+ const result2 = empty(undefined);
42
+ // Результат: true
43
+
44
+ const result3 = empty('');
45
+ // Результат: true
46
+
47
+ const result4 = empty(0);
48
+ // Результат: true
49
+
50
+ const result5 = empty(false);
51
+ // Результат: true
52
+
53
+ const result6 = empty([]);
54
+ // Результат: true
55
+
56
+ const result7 = empty({});
57
+ // Результат: true
58
+ ```
59
+
60
+ ### Пример 2: Проверка непустых значений
61
+
62
+ ```js
63
+ const result1 = empty('example');
64
+ // Результат: false
65
+
66
+ const result2 = empty(123);
67
+ // Результат: false
68
+
69
+ const result3 = empty(true);
70
+ // Результат: false
71
+
72
+ const result4 = empty([1, 2, 3]);
73
+ // Результат: false
74
+
75
+ const result5 = empty({ key: 'value' });
76
+ // Результат: false
77
+ ```