@rogolev/value 0.0.1 → 0.0.2

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.
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
@@ -1,68 +1,68 @@
1
- import is_array from './is_array.mjs';
2
-
3
- /**
4
- * Приводит значение переменной к логическому типу.
5
- *
6
- * ### Описание
7
- *
8
- * Функция `to_bool` используется для преобразования различных типов данных в логическое значение.
9
- * Если значение является пустым массивом, функция возвращает `false`.
10
- *
11
- * ### Параметры
12
- *
13
- * - `value` (any)
14
- * Переменная, значение которой необходимо привести к логическому типу.
15
- *
16
- * ### Возвращаемое значение
17
- *
18
- * Возвращает логическое значение, соответствующее переданному значению.
19
- *
20
- * ### Примеры использования
21
- *
22
- * 1. Преобразование пустого массива в `false`:
23
- *
24
- * ```js
25
- * const result = to_bool([]);
26
- * // Результат: false
27
- * ```
28
- *
29
- * 2. Преобразование пустого ассоциативного массива в `false`:
30
- *
31
- * ```js
32
- * const result = to_bool({});
33
- * // Результат: false
34
- * ```
35
- *
36
- * 3. Преобразование непустого массива в `true`:
37
- *
38
- * ```js
39
- * const result = to_bool([1, 2, 3]);
40
- * // Результат: true
41
- * ```
42
- *
43
- * 4. Преобразование других значений:
44
- *
45
- * ```js
46
- * const result1 = to_bool('example');
47
- * // Результат: true
48
- *
49
- * const result2 = to_bool(123);
50
- * // Результат: true
51
- *
52
- * const result3 = to_bool(null);
53
- * // Результат: false
54
- *
55
- * const result4 = to_bool(undefined);
56
- * // Результат: false
57
- * ```
58
- *
59
- * @param {any} value Переменная, значение которой необходимо привести к логическому типу.
60
- * @returns {boolean} Возвращает приведенное к логическому типу значение переменной `value`.
61
- */
62
- export default function to_bool(value) {
63
- if (is_array(value) && Object.keys(value).length === 0) {
64
- return false;
65
- }
66
-
67
- return Boolean(value);
68
- }
1
+ import is_array from './is_array.mjs';
2
+
3
+ /**
4
+ * Приводит значение переменной к логическому типу.
5
+ *
6
+ * ### Описание
7
+ *
8
+ * Функция `to_bool` используется для преобразования различных типов данных в логическое значение.
9
+ * Если значение является пустым массивом, функция возвращает `false`.
10
+ *
11
+ * ### Параметры
12
+ *
13
+ * - `value` (any)
14
+ * Переменная, значение которой необходимо привести к логическому типу.
15
+ *
16
+ * ### Возвращаемое значение
17
+ *
18
+ * Возвращает логическое значение, соответствующее переданному значению.
19
+ *
20
+ * ### Примеры использования
21
+ *
22
+ * 1. Преобразование пустого массива в `false`:
23
+ *
24
+ * ```js
25
+ * const result = to_bool([]);
26
+ * // Результат: false
27
+ * ```
28
+ *
29
+ * 2. Преобразование пустого ассоциативного массива в `false`:
30
+ *
31
+ * ```js
32
+ * const result = to_bool({});
33
+ * // Результат: false
34
+ * ```
35
+ *
36
+ * 3. Преобразование непустого массива в `true`:
37
+ *
38
+ * ```js
39
+ * const result = to_bool([1, 2, 3]);
40
+ * // Результат: true
41
+ * ```
42
+ *
43
+ * 4. Преобразование других значений:
44
+ *
45
+ * ```js
46
+ * const result1 = to_bool('example');
47
+ * // Результат: true
48
+ *
49
+ * const result2 = to_bool(123);
50
+ * // Результат: true
51
+ *
52
+ * const result3 = to_bool(null);
53
+ * // Результат: false
54
+ *
55
+ * const result4 = to_bool(undefined);
56
+ * // Результат: false
57
+ * ```
58
+ *
59
+ * @param {any} value Переменная, значение которой необходимо привести к логическому типу.
60
+ * @returns {boolean} Возвращает приведенное к логическому типу значение переменной `value`.
61
+ */
62
+ export default function to_bool(value) {
63
+ if (is_array(value) && Object.keys(value).length === 0) {
64
+ return false;
65
+ }
66
+
67
+ return Boolean(value);
68
+ }
@@ -1,64 +1,64 @@
1
- import to_bool from './to_bool.mjs';
2
-
3
- /**
4
- * Приводит значение переменной к логическому типу.
5
- *
6
- * ### Описание
7
- *
8
- * Функция `to_boolean` является синонимом функции `to_bool` и используется для преобразования различных типов данных в логическое значение.
9
- * Если значение является пустым массивом, функция возвращает `false`.
10
- *
11
- * ### Параметры
12
- *
13
- * - `value` (any)
14
- * Переменная, значение которой необходимо привести к логическому типу.
15
- *
16
- * ### Возвращаемое значение
17
- *
18
- * Возвращает логическое значение, соответствующее переданному значению.
19
- *
20
- * ### Примеры использования
21
- *
22
- * 1. Преобразование пустого массива в `false`:
23
- *
24
- * ```js
25
- * const result = to_boolean([]);
26
- * // Результат: false
27
- * ```
28
- *
29
- * 2. Преобразование пустого ассоциативного массива в `false`:
30
- *
31
- * ```js
32
- * const result = to_boolean({});
33
- * // Результат: false
34
- * ```
35
- *
36
- * 3. Преобразование непустого массива в `true`:
37
- *
38
- * ```js
39
- * const result = to_boolean([1, 2, 3]);
40
- * // Результат: true
41
- * ```
42
- *
43
- * 4. Преобразование других значений:
44
- *
45
- * ```js
46
- * const result1 = to_boolean('example');
47
- * // Результат: true
48
- *
49
- * const result2 = to_boolean(123);
50
- * // Результат: true
51
- *
52
- * const result3 = to_boolean(null);
53
- * // Результат: false
54
- *
55
- * const result4 = to_boolean(undefined);
56
- * // Результат: false
57
- * ```
58
- *
59
- * @param {any} value Переменная, значение которой необходимо привести к логическому типу.
60
- * @returns {boolean} Возвращает приведенное к логическому типу значение переменной `value`.
61
- */
62
- export default function to_boolean(value) {
63
- return to_bool(value);
64
- }
1
+ import to_bool from './to_bool.mjs';
2
+
3
+ /**
4
+ * Приводит значение переменной к логическому типу.
5
+ *
6
+ * ### Описание
7
+ *
8
+ * Функция `to_boolean` является синонимом функции `to_bool` и используется для преобразования различных типов данных в логическое значение.
9
+ * Если значение является пустым массивом, функция возвращает `false`.
10
+ *
11
+ * ### Параметры
12
+ *
13
+ * - `value` (any)
14
+ * Переменная, значение которой необходимо привести к логическому типу.
15
+ *
16
+ * ### Возвращаемое значение
17
+ *
18
+ * Возвращает логическое значение, соответствующее переданному значению.
19
+ *
20
+ * ### Примеры использования
21
+ *
22
+ * 1. Преобразование пустого массива в `false`:
23
+ *
24
+ * ```js
25
+ * const result = to_boolean([]);
26
+ * // Результат: false
27
+ * ```
28
+ *
29
+ * 2. Преобразование пустого ассоциативного массива в `false`:
30
+ *
31
+ * ```js
32
+ * const result = to_boolean({});
33
+ * // Результат: false
34
+ * ```
35
+ *
36
+ * 3. Преобразование непустого массива в `true`:
37
+ *
38
+ * ```js
39
+ * const result = to_boolean([1, 2, 3]);
40
+ * // Результат: true
41
+ * ```
42
+ *
43
+ * 4. Преобразование других значений:
44
+ *
45
+ * ```js
46
+ * const result1 = to_boolean('example');
47
+ * // Результат: true
48
+ *
49
+ * const result2 = to_boolean(123);
50
+ * // Результат: true
51
+ *
52
+ * const result3 = to_boolean(null);
53
+ * // Результат: false
54
+ *
55
+ * const result4 = to_boolean(undefined);
56
+ * // Результат: false
57
+ * ```
58
+ *
59
+ * @param {any} value Переменная, значение которой необходимо привести к логическому типу.
60
+ * @returns {boolean} Возвращает приведенное к логическому типу значение переменной `value`.
61
+ */
62
+ export default function to_boolean(value) {
63
+ return to_bool(value);
64
+ }
@@ -1,72 +1,72 @@
1
- import is_float from './is_float.mjs';
2
- import is_int from './is_int.mjs';
3
- import is_string from './is_string.mjs';
4
- import to_bool from './to_bool.mjs';
5
-
6
- /**
7
- * Приводит значение переменной к числу с плавающей точкой.
8
- *
9
- * ### Описание
10
- *
11
- * Функция `to_float` используется для преобразования различных типов данных в число с плавающей точкой. Если значение не является числом или строкой, функция возвращает `1` для истинных значений и `0` для ложных значений.
12
- *
13
- * ### Параметры
14
- *
15
- * - `value` (any)
16
- * Переменная, значение которой необходимо привести к числу с плавающей точкой.
17
- *
18
- * ### Возвращаемое значение
19
- *
20
- * Возвращает число с плавающей точкой, соответствующее переданному значению.
21
- *
22
- * ### Примеры использования
23
- *
24
- * 1. Преобразование строки в число с плавающей точкой:
25
- *
26
- * ```js
27
- * const result = to_float('123.45');
28
- * // Результат: 123.45
29
- * ```
30
- *
31
- * 2. Преобразование целого числа в число с плавающей точкой:
32
- *
33
- * ```js
34
- * const result = to_float(123);
35
- * // Результат: 123.0
36
- * ```
37
- *
38
- * 3. Преобразование булевых значений:
39
- *
40
- * ```js
41
- * const result1 = to_float(true);
42
- * // Результат: 1.0
43
- *
44
- * const result2 = to_float(false);
45
- * // Результат: 0.0
46
- * ```
47
- *
48
- * 4. Преобразование других значений:
49
- *
50
- * ```js
51
- * const result1 = to_float(null);
52
- * // Результат: 0.0
53
- *
54
- * const result2 = to_float(undefined);
55
- * // Результат: 0.0
56
- *
57
- * const result3 = to_float('example');
58
- * // Результат: 0.0
59
- * ```
60
- *
61
- * @param {any} value Переменная, значение которой необходимо привести к числу с плавающей точкой.
62
- * @returns {number} Возвращает приведенное к числу с плавающей точкой значение переменной `value`.
63
- */
64
- export default function to_float(value) {
65
- if (!is_int(value) && !is_float(value) && !is_string(value)) {
66
- return Number(to_bool(value));
67
- }
68
-
69
- const result = parseFloat(value);
70
-
71
- return Number.isNaN(result) ? 0 : result;
72
- }
1
+ import is_float from './is_float.mjs';
2
+ import is_int from './is_int.mjs';
3
+ import is_string from './is_string.mjs';
4
+ import to_bool from './to_bool.mjs';
5
+
6
+ /**
7
+ * Приводит значение переменной к числу с плавающей точкой.
8
+ *
9
+ * ### Описание
10
+ *
11
+ * Функция `to_float` используется для преобразования различных типов данных в число с плавающей точкой. Если значение не является числом или строкой, функция возвращает `1` для истинных значений и `0` для ложных значений.
12
+ *
13
+ * ### Параметры
14
+ *
15
+ * - `value` (any)
16
+ * Переменная, значение которой необходимо привести к числу с плавающей точкой.
17
+ *
18
+ * ### Возвращаемое значение
19
+ *
20
+ * Возвращает число с плавающей точкой, соответствующее переданному значению.
21
+ *
22
+ * ### Примеры использования
23
+ *
24
+ * 1. Преобразование строки в число с плавающей точкой:
25
+ *
26
+ * ```js
27
+ * const result = to_float('123.45');
28
+ * // Результат: 123.45
29
+ * ```
30
+ *
31
+ * 2. Преобразование целого числа в число с плавающей точкой:
32
+ *
33
+ * ```js
34
+ * const result = to_float(123);
35
+ * // Результат: 123.0
36
+ * ```
37
+ *
38
+ * 3. Преобразование булевых значений:
39
+ *
40
+ * ```js
41
+ * const result1 = to_float(true);
42
+ * // Результат: 1.0
43
+ *
44
+ * const result2 = to_float(false);
45
+ * // Результат: 0.0
46
+ * ```
47
+ *
48
+ * 4. Преобразование других значений:
49
+ *
50
+ * ```js
51
+ * const result1 = to_float(null);
52
+ * // Результат: 0.0
53
+ *
54
+ * const result2 = to_float(undefined);
55
+ * // Результат: 0.0
56
+ *
57
+ * const result3 = to_float('example');
58
+ * // Результат: 0.0
59
+ * ```
60
+ *
61
+ * @param {any} value Переменная, значение которой необходимо привести к числу с плавающей точкой.
62
+ * @returns {number} Возвращает приведенное к числу с плавающей точкой значение переменной `value`.
63
+ */
64
+ export default function to_float(value) {
65
+ if (!is_int(value) && !is_float(value) && !is_string(value)) {
66
+ return Number(to_bool(value));
67
+ }
68
+
69
+ const result = parseFloat(value);
70
+
71
+ return Number.isNaN(result) ? 0 : result;
72
+ }
@@ -1,93 +1,93 @@
1
- import to_bool from './to_bool.mjs';
2
- import is_float from './is_float.mjs';
3
- import is_int from './is_int.mjs';
4
- import is_string from './is_string.mjs';
5
-
6
- /**
7
- * Приводит значение переменной к целому числу.
8
- *
9
- * ### Описание
10
- *
11
- * Функция `to_int` используется для преобразования различных типов данных в целое число. Если значение не является числом или строкой, функция возвращает `1` для истинных значений и `0` для ложных значений.
12
- *
13
- * ### Параметры
14
- *
15
- * - `value` (any)
16
- * Переменная, значение которой необходимо привести к целому числу.
17
- *
18
- * - `base` (number)
19
- * Основание системы счисления для преобразования строки в число. По умолчанию `10`.
20
- *
21
- * ### Возвращаемое значение
22
- *
23
- * Возвращает целое число, соответствующее переданному значению.
24
- *
25
- * ### Примеры использования
26
- *
27
- * 1. Преобразование строки в целое число:
28
- *
29
- * ```js
30
- * const result = to_int('123');
31
- * // Результат: 123
32
- * ```
33
- *
34
- * 2. Преобразование числа с плавающей точкой в целое число:
35
- *
36
- * ```js
37
- * const result = to_int(123.45);
38
- * // Результат: 123
39
- * ```
40
- *
41
- * 3. Преобразование булевых значений:
42
- *
43
- * ```js
44
- * const result1 = to_int(true);
45
- * // Результат: 1
46
- *
47
- * const result2 = to_int(false);
48
- * // Результат: 0
49
- * ```
50
- *
51
- * 4. Преобразование других значений:
52
- *
53
- * ```js
54
- * const result1 = to_int(null);
55
- * // Результат: 0
56
- *
57
- * const result2 = to_int(undefined);
58
- * // Результат: 0
59
- *
60
- * const result3 = to_int('example');
61
- * // Результат: 0
62
- * ```
63
- *
64
- * 5. Преобразование строки с основанием системы счисления:
65
- *
66
- * ```js
67
- * const result1 = to_int('10', 2);
68
- * // Результат: 2
69
- *
70
- * const result2 = to_int('A', 16);
71
- * // Результат: 10
72
- *
73
- * const result3 = to_int('7', 8);
74
- * // Результат: 7
75
- * ```
76
- *
77
- * @param {any} value Переменная, значение которой необходимо привести к целому числу.
78
- * @param {number} [base=10] Основание системы счисления для преобразования строки в число.
79
- * @returns {number} Возвращает приведенное к целому числу значение переменной `value`.
80
- */
81
- export default function to_int(value, base = 10) {
82
- if (!is_int(base)) {
83
- throw new TypeError('Параметр "base" должен быть целым числом.');
84
- }
85
-
86
- if (!is_int(value) && !is_float(value) && !is_string(value)) {
87
- return Number(to_bool(value));
88
- }
89
-
90
- const result = parseInt(value, base);
91
-
92
- return Number.isNaN(result) ? 0 : result;
93
- }
1
+ import to_bool from './to_bool.mjs';
2
+ import is_float from './is_float.mjs';
3
+ import is_int from './is_int.mjs';
4
+ import is_string from './is_string.mjs';
5
+
6
+ /**
7
+ * Приводит значение переменной к целому числу.
8
+ *
9
+ * ### Описание
10
+ *
11
+ * Функция `to_int` используется для преобразования различных типов данных в целое число. Если значение не является числом или строкой, функция возвращает `1` для истинных значений и `0` для ложных значений.
12
+ *
13
+ * ### Параметры
14
+ *
15
+ * - `value` (any)
16
+ * Переменная, значение которой необходимо привести к целому числу.
17
+ *
18
+ * - `base` (number)
19
+ * Основание системы счисления для преобразования строки в число. По умолчанию `10`.
20
+ *
21
+ * ### Возвращаемое значение
22
+ *
23
+ * Возвращает целое число, соответствующее переданному значению.
24
+ *
25
+ * ### Примеры использования
26
+ *
27
+ * 1. Преобразование строки в целое число:
28
+ *
29
+ * ```js
30
+ * const result = to_int('123');
31
+ * // Результат: 123
32
+ * ```
33
+ *
34
+ * 2. Преобразование числа с плавающей точкой в целое число:
35
+ *
36
+ * ```js
37
+ * const result = to_int(123.45);
38
+ * // Результат: 123
39
+ * ```
40
+ *
41
+ * 3. Преобразование булевых значений:
42
+ *
43
+ * ```js
44
+ * const result1 = to_int(true);
45
+ * // Результат: 1
46
+ *
47
+ * const result2 = to_int(false);
48
+ * // Результат: 0
49
+ * ```
50
+ *
51
+ * 4. Преобразование других значений:
52
+ *
53
+ * ```js
54
+ * const result1 = to_int(null);
55
+ * // Результат: 0
56
+ *
57
+ * const result2 = to_int(undefined);
58
+ * // Результат: 0
59
+ *
60
+ * const result3 = to_int('example');
61
+ * // Результат: 0
62
+ * ```
63
+ *
64
+ * 5. Преобразование строки с основанием системы счисления:
65
+ *
66
+ * ```js
67
+ * const result1 = to_int('10', 2);
68
+ * // Результат: 2
69
+ *
70
+ * const result2 = to_int('A', 16);
71
+ * // Результат: 10
72
+ *
73
+ * const result3 = to_int('7', 8);
74
+ * // Результат: 7
75
+ * ```
76
+ *
77
+ * @param {any} value Переменная, значение которой необходимо привести к целому числу.
78
+ * @param {number} [base=10] Основание системы счисления для преобразования строки в число.
79
+ * @returns {number} Возвращает приведенное к целому числу значение переменной `value`.
80
+ */
81
+ export default function to_int(value, base = 10) {
82
+ if (!is_int(base)) {
83
+ throw new TypeError('Параметр "base" должен быть целым числом.');
84
+ }
85
+
86
+ if (!is_int(value) && !is_float(value) && !is_string(value)) {
87
+ return Number(to_bool(value));
88
+ }
89
+
90
+ const result = parseInt(value, base);
91
+
92
+ return Number.isNaN(result) ? 0 : result;
93
+ }