@rogolev/value 0.0.2 → 0.0.3

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 (133) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/README.md +19 -1
  3. package/docs/classes/Value/constructor.md +48 -0
  4. package/docs/classes/Value/get.md +51 -0
  5. package/docs/classes/Value/getType.md +71 -0
  6. package/docs/classes/Value/isArray.md +67 -0
  7. package/docs/classes/Value/isAssoc.md +68 -0
  8. package/docs/classes/Value/isBigInt.md +52 -0
  9. package/docs/classes/Value/isBool.md +60 -0
  10. package/docs/classes/Value/isBoolean.md +60 -0
  11. package/docs/classes/Value/isClass.md +55 -0
  12. package/docs/classes/Value/isEmpty.md +84 -0
  13. package/docs/classes/Value/isFloat.md +52 -0
  14. package/docs/classes/Value/isFunction.md +60 -0
  15. package/docs/classes/Value/isInfinity.md +60 -0
  16. package/docs/classes/Value/isInt.md +52 -0
  17. package/docs/classes/Value/isInteger.md +52 -0
  18. package/docs/classes/Value/isList.md +59 -0
  19. package/docs/classes/Value/isNaN.md +79 -0
  20. package/docs/classes/Value/isNull.md +59 -0
  21. package/docs/classes/Value/isNumber.md +80 -0
  22. package/docs/classes/Value/isNumeric.md +79 -0
  23. package/docs/classes/Value/isObject.md +68 -0
  24. package/docs/classes/Value/isScalar.md +72 -0
  25. package/docs/classes/Value/isString.md +67 -0
  26. package/docs/classes/Value/isSymbol.md +75 -0
  27. package/docs/classes/Value/isUndefined.md +67 -0
  28. package/docs/classes/Value/print.md +164 -0
  29. package/docs/classes/Value/printType.md +158 -0
  30. package/docs/classes/Value/setType.md +79 -0
  31. package/docs/classes/Value/toArray.md +85 -0
  32. package/docs/classes/Value/toAssoc.md +85 -0
  33. package/docs/classes/Value/toBool.md +71 -0
  34. package/docs/classes/Value/toBoolean.md +71 -0
  35. package/docs/classes/Value/toFloat.md +72 -0
  36. package/docs/classes/Value/toInt.md +72 -0
  37. package/docs/classes/Value/toInteger.md +72 -0
  38. package/docs/classes/Value/toList.md +77 -0
  39. package/docs/classes/Value/toObject.md +78 -0
  40. package/docs/classes/Value/toPrint.md +115 -0
  41. package/docs/classes/Value/toPrintType.md +110 -0
  42. package/docs/classes/Value/toString.md +134 -0
  43. package/docs/classes/Value.md +113 -0
  44. package/docs/classes.md +2 -0
  45. package/docs/constants.md +47 -0
  46. package/docs/helpers/value.md +95 -0
  47. package/docs/helpers.md +2 -0
  48. package/index.mjs +3 -0
  49. package/package.json +2 -2
  50. package/src/classes/Convert.mjs +818 -819
  51. package/src/classes/Type.mjs +1284 -1285
  52. package/src/classes/Value.mjs +2846 -0
  53. package/src/constants.mjs +14 -0
  54. package/src/helpers/array.mjs +107 -107
  55. package/src/helpers/empty.mjs +70 -70
  56. package/src/helpers/gettype.mjs +149 -133
  57. package/src/helpers/is_array.mjs +128 -128
  58. package/src/helpers/is_assoc.mjs +51 -51
  59. package/src/helpers/is_bigint.mjs +47 -47
  60. package/src/helpers/is_bool.mjs +43 -43
  61. package/src/helpers/is_boolean.mjs +43 -43
  62. package/src/helpers/is_class.mjs +87 -87
  63. package/src/helpers/is_float.mjs +67 -67
  64. package/src/helpers/is_function.mjs +74 -74
  65. package/src/helpers/is_infinity.mjs +52 -52
  66. package/src/helpers/is_int.mjs +57 -57
  67. package/src/helpers/is_integer.mjs +74 -74
  68. package/src/helpers/is_list.mjs +43 -43
  69. package/src/helpers/is_nan.mjs +51 -51
  70. package/src/helpers/is_null.mjs +37 -37
  71. package/src/helpers/is_number.mjs +49 -49
  72. package/src/helpers/is_numeric.mjs +64 -64
  73. package/src/helpers/is_object.mjs +72 -72
  74. package/src/helpers/is_scalar.mjs +45 -45
  75. package/src/helpers/is_string.mjs +46 -46
  76. package/src/helpers/is_symbol.mjs +46 -46
  77. package/src/helpers/is_undefined.mjs +44 -44
  78. package/src/helpers/print.mjs +245 -245
  79. package/src/helpers/print_type.mjs +261 -261
  80. package/src/helpers/settype.mjs +101 -101
  81. package/src/helpers/to_array.mjs +118 -118
  82. package/src/helpers/to_assoc.mjs +98 -98
  83. package/src/helpers/to_bool.mjs +68 -68
  84. package/src/helpers/to_boolean.mjs +64 -64
  85. package/src/helpers/to_float.mjs +72 -72
  86. package/src/helpers/to_int.mjs +93 -93
  87. package/src/helpers/to_integer.mjs +81 -81
  88. package/src/helpers/to_list.mjs +56 -56
  89. package/src/helpers/to_object.mjs +94 -94
  90. package/src/helpers/to_string.mjs +157 -157
  91. package/src/helpers/value.mjs +92 -0
  92. package/tests/classes/Convert.test.mjs +398 -399
  93. package/tests/classes/Type.test.mjs +1262 -1263
  94. package/tests/classes/Value.test.mjs +423 -0
  95. package/tests/constants.test.mjs +75 -0
  96. package/tests/helpers/array.test.mjs +58 -58
  97. package/tests/helpers/empty.test.mjs +22 -22
  98. package/tests/helpers/gettype.test.mjs +74 -74
  99. package/tests/helpers/is_array.test.mjs +404 -404
  100. package/tests/helpers/is_assoc.test.mjs +42 -42
  101. package/tests/helpers/is_bigint.test.mjs +51 -51
  102. package/tests/helpers/is_bool.test.mjs +43 -43
  103. package/tests/helpers/is_boolean.test.mjs +43 -43
  104. package/tests/helpers/is_class.test.mjs +84 -84
  105. package/tests/helpers/is_float.test.mjs +87 -87
  106. package/tests/helpers/is_function.test.mjs +83 -83
  107. package/tests/helpers/is_infinity.test.mjs +46 -46
  108. package/tests/helpers/is_int.test.mjs +45 -45
  109. package/tests/helpers/is_integer.test.mjs +64 -64
  110. package/tests/helpers/is_list.test.mjs +42 -42
  111. package/tests/helpers/is_nan.test.mjs +43 -43
  112. package/tests/helpers/is_null.test.mjs +17 -17
  113. package/tests/helpers/is_number.test.mjs +25 -25
  114. package/tests/helpers/is_numeric.test.mjs +30 -30
  115. package/tests/helpers/is_object.test.mjs +52 -52
  116. package/tests/helpers/is_scalar.test.mjs +21 -21
  117. package/tests/helpers/is_string.test.mjs +20 -20
  118. package/tests/helpers/is_symbol.test.mjs +20 -20
  119. package/tests/helpers/is_undefined.test.mjs +18 -18
  120. package/tests/helpers/print.test.mjs +62 -62
  121. package/tests/helpers/print_type.test.mjs +62 -62
  122. package/tests/helpers/settype.test.mjs +34 -34
  123. package/tests/helpers/to_array.test.mjs +38 -38
  124. package/tests/helpers/to_assoc.test.mjs +33 -33
  125. package/tests/helpers/to_bool.test.mjs +51 -51
  126. package/tests/helpers/to_boolean.test.mjs +51 -51
  127. package/tests/helpers/to_float.test.mjs +26 -26
  128. package/tests/helpers/to_int.test.mjs +48 -48
  129. package/tests/helpers/to_integer.test.mjs +48 -48
  130. package/tests/helpers/to_list.test.mjs +32 -32
  131. package/tests/helpers/to_object.test.mjs +36 -36
  132. package/tests/helpers/to_string.test.mjs +71 -71
  133. package/tests/helpers/value.test.mjs +68 -0
@@ -1,128 +1,128 @@
1
- /**
2
- * Проверяет, является ли переданное значение массивом или ассоциативным массивом (объектом с ключами и значениями).
3
- *
4
- * ### Описание
5
- *
6
- * В JavaScript массивы и объекты имеют разные структуры и предназначения:
7
- *
8
- * - Массивы (Array) являются упорядоченными коллекциями элементов, которые могут быть индексированы.
9
- * - Объекты (Object) содержат пары "ключ-значение", которые могут быть неупорядоченными.
10
- *
11
- * Эта функция проверяет, является ли переданное значение обычным массивом (например, `[1, 2, 3]`),
12
- * либо ассоциативным массивом (объектом с парами "ключ-значение", например, `{foo: 'bar'}`).
13
- *
14
- * ### Алгоритм работы функции
15
- *
16
- * 1. Сначала проверяется, является ли переданное значение обычным массивом с помощью встроенного метода `Array.isArray(value)`. Если это массив, функция сразу возвращает `true`.
17
- *
18
- * 2. Если переменная не является массивом, то выполняются дополнительные проверки:
19
- *
20
- * - Проверяется, что значение не равно `null` (так как `null` в JavaScript также является объектом, но не является ни массивом, ни объектом с парами "ключ-значение").
21
- * - Проверяется, что значение является объектом JavaScript (с помощью `typeof value === 'object'`).
22
- * - Проверяется, что прототип объекта совпадает с `Object.prototype` (это объект, от которого наследуются все объекты в JavaScript) или является `null` (это означает, что объект был создан с помощью `Object.create(null)` и не имеет прототипа).
23
- * - Исключаются массивоподобные объекты (например, `arguments`, `NodeList`), путем проверки, что свойство `length` не является собственным свойством объекта.
24
- * - Дополнительно проверяется, что объект является простым (его конструктор равен `Object`), а также исключаются встроенные объекты (`Math`, `JSON`, `Reflect`, `Intl`), для которых функция возвращает `true`.
25
- *
26
- * ### Параметры
27
- *
28
- * - `value` (any)
29
- * Проверяемая переменная.
30
- *
31
- * ### Возвращаемое значение
32
- *
33
- * Возвращает `true`, если переменная является обычным массивом (`Array`), ассоциативным массивом (объектом с парами "ключ-значение"), ассоциативным массивом, созданным с помощью `Object.create(null)`. В остальных случаях функция возвращает `false`.
34
- *
35
- * ### Примеры использования
36
- *
37
- * 1. Простые массивы:
38
- *
39
- * ```js
40
- * is_array([1, 2, 3]); // true
41
- * is_array([]); // true
42
- * ```
43
- *
44
- * 2. Ассоциативные массивы (объекты с ключами и значениями):
45
- *
46
- * ```js
47
- * is_array({ foo: 'bar', baz: 42 }); // true
48
- * is_array({ '0': 'a', '1': 'b' }); // true
49
- * ```
50
- *
51
- * 3. Объекты, созданные без прототипа:
52
- *
53
- * ```js
54
- * const noProtoObject = Object.create(null);
55
- * noProtoObject.foo = 'bar';
56
- * is_array(noProtoObject); // true
57
- * ```
58
- *
59
- * 4. Примитивы и невалидные значения:
60
- *
61
- * ```js
62
- * is_array(null); // false
63
- * is_array(undefined); // false
64
- * is_array(42); // false
65
- * is_array('hello'); // false
66
- * ```
67
- *
68
- * 5. Специальные объекты:
69
- *
70
- * ```js
71
- * is_array(new Map()); // false
72
- * is_array(new Set()); // false
73
- * is_array(() => {}); // false
74
- * ```
75
- *
76
- * 6. Классы и их экземпляры:
77
- *
78
- * ```js
79
- * class MyClass {}
80
- * const instance = new MyClass();
81
- * is_array(instance); // false
82
- * ```
83
- *
84
- * @param {any} value Проверяемая переменная.
85
- * @returns {boolean} Возвращает `true`, если значение является массивом или ассоциативным массивом, иначе `false`.
86
- */
87
- export default function is_array(value) {
88
- // Для массивов (Array) возвращаем `true` по умолчанию.
89
- if (Array.isArray(value)) {
90
- return true;
91
- }
92
-
93
- // Далее работаем только с объектами.
94
- if (!value || typeof value !== 'object') {
95
- return false;
96
- }
97
-
98
- // Если у переданного объекта отсутствует прототип, то это означает,
99
- // что объект является контейнером пар ключ-значение без встроенных методов,
100
- // наследуемых от прототипа Object.prototype.
101
- // Такой контейнер можно создать с помощью конструкции `Object.create(null)`
102
- // или с помощью функции `array({})`.
103
- if (Object.getPrototypeOf(value) === null) {
104
- return true;
105
- }
106
-
107
- // Исключаем встроенные объекты Math, JSON, Reflect, Intl, для которых
108
- // функция возвращает `true`.
109
- if ([Math, JSON, Reflect, Intl].includes(value)) {
110
- return false;
111
- }
112
-
113
- // Если у объекта присутствует свойство `length`, то это означает, что
114
- // передан массивоподобный объект, например `arguments`.
115
- // С точки зрения данной функции, данные объекты считать
116
- // ассоциативными массивами нельзя.
117
- if (Object.hasOwn(value, 'length')) {
118
- return false;
119
- }
120
-
121
- // Если прототип переданного объекта - `Object.prototype`, то передан
122
- // обычный объект.
123
- if (Object.getPrototypeOf(value) === Object.prototype) {
124
- return true;
125
- }
126
-
127
- return false;
128
- }
1
+ /**
2
+ * Проверяет, является ли переданное значение массивом или ассоциативным массивом (объектом с ключами и значениями).
3
+ *
4
+ * ### Описание
5
+ *
6
+ * В JavaScript массивы и объекты имеют разные структуры и предназначения:
7
+ *
8
+ * - Массивы (Array) являются упорядоченными коллекциями элементов, которые могут быть индексированы.
9
+ * - Объекты (Object) содержат пары "ключ-значение", которые могут быть неупорядоченными.
10
+ *
11
+ * Эта функция проверяет, является ли переданное значение обычным массивом (например, `[1, 2, 3]`),
12
+ * либо ассоциативным массивом (объектом с парами "ключ-значение", например, `{foo: 'bar'}`).
13
+ *
14
+ * ### Алгоритм работы функции
15
+ *
16
+ * 1. Сначала проверяется, является ли переданное значение обычным массивом с помощью встроенного метода `Array.isArray(value)`. Если это массив, функция сразу возвращает `true`.
17
+ *
18
+ * 2. Если переменная не является массивом, то выполняются дополнительные проверки:
19
+ *
20
+ * - Проверяется, что значение не равно `null` (так как `null` в JavaScript также является объектом, но не является ни массивом, ни объектом с парами "ключ-значение").
21
+ * - Проверяется, что значение является объектом JavaScript (с помощью `typeof value === 'object'`).
22
+ * - Проверяется, что прототип объекта совпадает с `Object.prototype` (это объект, от которого наследуются все объекты в JavaScript) или является `null` (это означает, что объект был создан с помощью `Object.create(null)` и не имеет прототипа).
23
+ * - Исключаются массивоподобные объекты (например, `arguments`, `NodeList`), путем проверки, что свойство `length` не является собственным свойством объекта.
24
+ * - Дополнительно проверяется, что объект является простым (его конструктор равен `Object`), а также исключаются встроенные объекты (`Math`, `JSON`, `Reflect`, `Intl`), для которых функция возвращает `true`.
25
+ *
26
+ * ### Параметры
27
+ *
28
+ * - `value` (any)
29
+ * Проверяемая переменная.
30
+ *
31
+ * ### Возвращаемое значение
32
+ *
33
+ * Возвращает `true`, если переменная является обычным массивом (`Array`), ассоциативным массивом (объектом с парами "ключ-значение"), ассоциативным массивом, созданным с помощью `Object.create(null)`. В остальных случаях функция возвращает `false`.
34
+ *
35
+ * ### Примеры использования
36
+ *
37
+ * 1. Простые массивы:
38
+ *
39
+ * ```js
40
+ * is_array([1, 2, 3]); // true
41
+ * is_array([]); // true
42
+ * ```
43
+ *
44
+ * 2. Ассоциативные массивы (объекты с ключами и значениями):
45
+ *
46
+ * ```js
47
+ * is_array({ foo: 'bar', baz: 42 }); // true
48
+ * is_array({ '0': 'a', '1': 'b' }); // true
49
+ * ```
50
+ *
51
+ * 3. Объекты, созданные без прототипа:
52
+ *
53
+ * ```js
54
+ * const noProtoObject = Object.create(null);
55
+ * noProtoObject.foo = 'bar';
56
+ * is_array(noProtoObject); // true
57
+ * ```
58
+ *
59
+ * 4. Примитивы и невалидные значения:
60
+ *
61
+ * ```js
62
+ * is_array(null); // false
63
+ * is_array(undefined); // false
64
+ * is_array(42); // false
65
+ * is_array('hello'); // false
66
+ * ```
67
+ *
68
+ * 5. Специальные объекты:
69
+ *
70
+ * ```js
71
+ * is_array(new Map()); // false
72
+ * is_array(new Set()); // false
73
+ * is_array(() => {}); // false
74
+ * ```
75
+ *
76
+ * 6. Классы и их экземпляры:
77
+ *
78
+ * ```js
79
+ * class MyClass {}
80
+ * const instance = new MyClass();
81
+ * is_array(instance); // false
82
+ * ```
83
+ *
84
+ * @param {any} value Проверяемая переменная.
85
+ * @returns {boolean} Возвращает `true`, если значение является массивом или ассоциативным массивом, иначе `false`.
86
+ */
87
+ export default function is_array(value) {
88
+ // Для массивов (Array) возвращаем `true` по умолчанию.
89
+ if (Array.isArray(value)) {
90
+ return true;
91
+ }
92
+
93
+ // Далее работаем только с объектами.
94
+ if (!value || typeof value !== 'object') {
95
+ return false;
96
+ }
97
+
98
+ // Если у переданного объекта отсутствует прототип, то это означает,
99
+ // что объект является контейнером пар ключ-значение без встроенных методов,
100
+ // наследуемых от прототипа Object.prototype.
101
+ // Такой контейнер можно создать с помощью конструкции `Object.create(null)`
102
+ // или с помощью функции `array({})`.
103
+ if (Object.getPrototypeOf(value) === null) {
104
+ return true;
105
+ }
106
+
107
+ // Исключаем встроенные объекты Math, JSON, Reflect, Intl, для которых
108
+ // функция возвращает `true`.
109
+ if ([Math, JSON, Reflect, Intl].includes(value)) {
110
+ return false;
111
+ }
112
+
113
+ // Если у объекта присутствует свойство `length`, то это означает, что
114
+ // передан массивоподобный объект, например `arguments`.
115
+ // С точки зрения данной функции, данные объекты считать
116
+ // ассоциативными массивами нельзя.
117
+ if (Object.hasOwn(value, 'length')) {
118
+ return false;
119
+ }
120
+
121
+ // Если прототип переданного объекта - `Object.prototype`, то передан
122
+ // обычный объект.
123
+ if (Object.getPrototypeOf(value) === Object.prototype) {
124
+ return true;
125
+ }
126
+
127
+ return false;
128
+ }
@@ -1,51 +1,51 @@
1
- import is_array from './is_array.mjs';
2
-
3
- /**
4
- * Проверяет, является ли значение ассоциативным массивом.
5
- *
6
- * ### Параметры
7
- *
8
- * - `value` (any)
9
- * Значение, которое необходимо проверить.
10
- *
11
- * ### Описание
12
- *
13
- * Функция `is_assoc` проверяет, является ли переданное значение ассоциативным массивом.
14
- *
15
- * Она использует метод `is_array` для проверки значения и убеждается, что значение не является обычным массивом.
16
- *
17
- * ### Возвращаемое значение
18
- *
19
- * Возвращает `true`, если значение является ассоциативным массивом, и `false` в противном случае.
20
- *
21
- * ### Примеры использования
22
- *
23
- * #### Пример 1: Проверка ассоциативных массивов
24
- *
25
- * ```js
26
- * is_assoc({ foo: 'bar' }); // true
27
- * is_assoc({}); // true
28
- * ```
29
- *
30
- * #### Пример 2: Проверка обычных массивов
31
- *
32
- * ```js
33
- * is_assoc([]); // false
34
- * is_assoc([1, 2, 3]); // false
35
- * ```
36
- *
37
- * #### Пример 3: Проверка значений других типов
38
- *
39
- * ```js
40
- * is_assoc('string'); // false (строка)
41
- * is_assoc(42); // false (число)
42
- * is_assoc(null); // false
43
- * is_assoc(undefined); // false
44
- * ```
45
- *
46
- * @param {any} value Значение, которое необходимо проверить.
47
- * @returns {boolean} Возвращает `true`, если значение является ассоциативным массивом, и `false` в противном случае.
48
- */
49
- export default function is_assoc(value) {
50
- return is_array(value) && !Array.isArray(value);
51
- }
1
+ import is_array from './is_array.mjs';
2
+
3
+ /**
4
+ * Проверяет, является ли значение ассоциативным массивом.
5
+ *
6
+ * ### Параметры
7
+ *
8
+ * - `value` (any)
9
+ * Значение, которое необходимо проверить.
10
+ *
11
+ * ### Описание
12
+ *
13
+ * Функция `is_assoc` проверяет, является ли переданное значение ассоциативным массивом.
14
+ *
15
+ * Она использует метод `is_array` для проверки значения и убеждается, что значение не является обычным массивом.
16
+ *
17
+ * ### Возвращаемое значение
18
+ *
19
+ * Возвращает `true`, если значение является ассоциативным массивом, и `false` в противном случае.
20
+ *
21
+ * ### Примеры использования
22
+ *
23
+ * #### Пример 1: Проверка ассоциативных массивов
24
+ *
25
+ * ```js
26
+ * is_assoc({ foo: 'bar' }); // true
27
+ * is_assoc({}); // true
28
+ * ```
29
+ *
30
+ * #### Пример 2: Проверка обычных массивов
31
+ *
32
+ * ```js
33
+ * is_assoc([]); // false
34
+ * is_assoc([1, 2, 3]); // false
35
+ * ```
36
+ *
37
+ * #### Пример 3: Проверка значений других типов
38
+ *
39
+ * ```js
40
+ * is_assoc('string'); // false (строка)
41
+ * is_assoc(42); // false (число)
42
+ * is_assoc(null); // false
43
+ * is_assoc(undefined); // false
44
+ * ```
45
+ *
46
+ * @param {any} value Значение, которое необходимо проверить.
47
+ * @returns {boolean} Возвращает `true`, если значение является ассоциативным массивом, и `false` в противном случае.
48
+ */
49
+ export default function is_assoc(value) {
50
+ return is_array(value) && !Array.isArray(value);
51
+ }
@@ -1,47 +1,47 @@
1
- /**
2
- * Проверяет, является ли значение типом `bigint`.
3
- *
4
- * ### Параметры
5
- *
6
- * - `value` (any)
7
- * Значение, которое необходимо проверить.
8
- *
9
- * ### Описание
10
- *
11
- * Функция `is_bigint` проверяет, является ли переданное значение типом `bigint`.
12
- *
13
- * 1. Проверяется, что значение имеет тип `bigint`.
14
- *
15
- * Функция возвращает `false` для значений других типов, таких как числа, строки, объекты или массивы.
16
- *
17
- * ### Возвращаемое значение
18
- *
19
- * Возвращает `true`, если значение является типом `bigint`, и `false` в противном случае.
20
- *
21
- * ### Примеры использования
22
- *
23
- * #### Пример 1: Проверка значений типа bigint
24
- *
25
- * ```js
26
- * is_bigint(BigInt(123456)); // true
27
- * is_bigint(BigInt(-123456)); // true
28
- * ```
29
- *
30
- * #### Пример 2: Проверка значений других типов
31
- *
32
- * ```js
33
- * is_bigint(42); // false (число)
34
- * is_bigint('42'); // false (строка)
35
- * is_bigint(true); // false (логическое значение)
36
- * is_bigint(null); // false
37
- * is_bigint(undefined); // false
38
- * is_bigint({}); // false (объект)
39
- * is_bigint([]); // false (массив)
40
- * ```
41
- *
42
- * @param {any} value Значение, которое необходимо проверить.
43
- * @returns {boolean} Возвращает `true`, если значение является типом bigint, и `false` в противном случае.
44
- */
45
- export default function is_bigint(value) {
46
- return typeof value === 'bigint';
47
- }
1
+ /**
2
+ * Проверяет, является ли значение типом `bigint`.
3
+ *
4
+ * ### Параметры
5
+ *
6
+ * - `value` (any)
7
+ * Значение, которое необходимо проверить.
8
+ *
9
+ * ### Описание
10
+ *
11
+ * Функция `is_bigint` проверяет, является ли переданное значение типом `bigint`.
12
+ *
13
+ * 1. Проверяется, что значение имеет тип `bigint`.
14
+ *
15
+ * Функция возвращает `false` для значений других типов, таких как числа, строки, объекты или массивы.
16
+ *
17
+ * ### Возвращаемое значение
18
+ *
19
+ * Возвращает `true`, если значение является типом `bigint`, и `false` в противном случае.
20
+ *
21
+ * ### Примеры использования
22
+ *
23
+ * #### Пример 1: Проверка значений типа bigint
24
+ *
25
+ * ```js
26
+ * is_bigint(BigInt(123456)); // true
27
+ * is_bigint(BigInt(-123456)); // true
28
+ * ```
29
+ *
30
+ * #### Пример 2: Проверка значений других типов
31
+ *
32
+ * ```js
33
+ * is_bigint(42); // false (число)
34
+ * is_bigint('42'); // false (строка)
35
+ * is_bigint(true); // false (логическое значение)
36
+ * is_bigint(null); // false
37
+ * is_bigint(undefined); // false
38
+ * is_bigint({}); // false (объект)
39
+ * is_bigint([]); // false (массив)
40
+ * ```
41
+ *
42
+ * @param {any} value Значение, которое необходимо проверить.
43
+ * @returns {boolean} Возвращает `true`, если значение является типом bigint, и `false` в противном случае.
44
+ */
45
+ export default function is_bigint(value) {
46
+ return typeof value === 'bigint';
47
+ }
@@ -1,43 +1,43 @@
1
- /**
2
- * Проверяет, является ли переданное значение логическим типом (`boolean`).
3
- *
4
- * ### Описание
5
- *
6
- * В JavaScript логическое значение может быть только двумя состояниями: `true` или `false`.
7
- * Функция проверяет тип переданного значения с использованием оператора `typeof`.
8
- * Если значение является примитивом типа `boolean`, функция возвращает `true`.
9
- * Для всех других типов (включая объекты, строки, числа, `null`, `undefined` и другие) функция вернёт `false`.
10
- *
11
- * #### Примечание
12
- *
13
- * - Функция возвращает `false` для объектов типа `Boolean`, созданных с помощью конструктора `new Boolean()`.
14
- * - Возвращает `false` для массивов, объектов и других типов данных, отличных от `boolean`.
15
- *
16
- * ### Параметры
17
- *
18
- * - `value` (any):
19
- * Проверяемая переменная.
20
- *
21
- * ### Возвращаемое значение
22
- *
23
- * Возвращает `true`, если значение `value` является логическим (`boolean`), иначе `false`.
24
- *
25
- * ### Примеры использования
26
- *
27
- * ```js
28
- * is_bool(true); // Возвращает: true
29
- * is_bool(false); // Возвращает: true
30
- * is_bool(0); // Возвращает: false
31
- * is_bool('true'); // Возвращает: false
32
- * is_bool(null); // Возвращает: false
33
- * is_bool([]); // Возвращает: false
34
- * is_bool({}); // Возвращает: false
35
- * is_bool(new Boolean(true)); // Возвращает: false
36
- * ```
37
- *
38
- * @param {any} value Проверяемая переменная.
39
- * @returns {boolean} Возвращает `true`, если значение является логическим, иначе `false`.
40
- */
41
- export default function is_bool(value) {
42
- return typeof value === 'boolean';
43
- }
1
+ /**
2
+ * Проверяет, является ли переданное значение логическим типом (`boolean`).
3
+ *
4
+ * ### Описание
5
+ *
6
+ * В JavaScript логическое значение может быть только двумя состояниями: `true` или `false`.
7
+ * Функция проверяет тип переданного значения с использованием оператора `typeof`.
8
+ * Если значение является примитивом типа `boolean`, функция возвращает `true`.
9
+ * Для всех других типов (включая объекты, строки, числа, `null`, `undefined` и другие) функция вернёт `false`.
10
+ *
11
+ * #### Примечание
12
+ *
13
+ * - Функция возвращает `false` для объектов типа `Boolean`, созданных с помощью конструктора `new Boolean()`.
14
+ * - Возвращает `false` для массивов, объектов и других типов данных, отличных от `boolean`.
15
+ *
16
+ * ### Параметры
17
+ *
18
+ * - `value` (any):
19
+ * Проверяемая переменная.
20
+ *
21
+ * ### Возвращаемое значение
22
+ *
23
+ * Возвращает `true`, если значение `value` является логическим (`boolean`), иначе `false`.
24
+ *
25
+ * ### Примеры использования
26
+ *
27
+ * ```js
28
+ * is_bool(true); // Возвращает: true
29
+ * is_bool(false); // Возвращает: true
30
+ * is_bool(0); // Возвращает: false
31
+ * is_bool('true'); // Возвращает: false
32
+ * is_bool(null); // Возвращает: false
33
+ * is_bool([]); // Возвращает: false
34
+ * is_bool({}); // Возвращает: false
35
+ * is_bool(new Boolean(true)); // Возвращает: false
36
+ * ```
37
+ *
38
+ * @param {any} value Проверяемая переменная.
39
+ * @returns {boolean} Возвращает `true`, если значение является логическим, иначе `false`.
40
+ */
41
+ export default function is_bool(value) {
42
+ return typeof value === 'boolean';
43
+ }
@@ -1,43 +1,43 @@
1
- /**
2
- * Проверяет, является ли переданное значение логическим типом (`boolean`).
3
- *
4
- * ### Описание
5
- *
6
- * В JavaScript логическое значение может быть только двумя состояниями: `true` или `false`.
7
- * Функция проверяет тип переданного значения с использованием оператора `typeof`.
8
- * Если значение является примитивом типа `boolean`, функция возвращает `true`.
9
- * Для всех других типов (включая объекты, строки, числа, `null`, `undefined` и другие) функция вернёт `false`.
10
- *
11
- * #### Примечание
12
- *
13
- * - Функция возвращает `false` для объектов типа `Boolean`, созданных с помощью конструктора `new Boolean()`.
14
- * - Возвращает `false` для массивов, объектов и других типов данных, отличных от `boolean`.
15
- *
16
- * ### Параметры
17
- *
18
- * - `value` (any):
19
- * Проверяемая переменная.
20
- *
21
- * ### Возвращаемое значение
22
- *
23
- * Возвращает `true`, если значение `value` является логическим (`boolean`), иначе `false`.
24
- *
25
- * ### Примеры использования
26
- *
27
- * ```js
28
- * is_boolean(true); // Возвращает: true
29
- * is_boolean(false); // Возвращает: true
30
- * is_boolean(0); // Возвращает: false
31
- * is_boolean('true'); // Возвращает: false
32
- * is_boolean(null); // Возвращает: false
33
- * is_boolean([]); // Возвращает: false
34
- * is_boolean({}); // Возвращает: false
35
- * is_boolean(new Boolean(true)); // Возвращает: false
36
- * ```
37
- *
38
- * @param {any} value Проверяемая переменная.
39
- * @returns {boolean} Возвращает `true`, если значение является логическим, иначе `false`.
40
- */
41
- export default function is_boolean(value) {
42
- return typeof value === 'boolean';
43
- }
1
+ /**
2
+ * Проверяет, является ли переданное значение логическим типом (`boolean`).
3
+ *
4
+ * ### Описание
5
+ *
6
+ * В JavaScript логическое значение может быть только двумя состояниями: `true` или `false`.
7
+ * Функция проверяет тип переданного значения с использованием оператора `typeof`.
8
+ * Если значение является примитивом типа `boolean`, функция возвращает `true`.
9
+ * Для всех других типов (включая объекты, строки, числа, `null`, `undefined` и другие) функция вернёт `false`.
10
+ *
11
+ * #### Примечание
12
+ *
13
+ * - Функция возвращает `false` для объектов типа `Boolean`, созданных с помощью конструктора `new Boolean()`.
14
+ * - Возвращает `false` для массивов, объектов и других типов данных, отличных от `boolean`.
15
+ *
16
+ * ### Параметры
17
+ *
18
+ * - `value` (any):
19
+ * Проверяемая переменная.
20
+ *
21
+ * ### Возвращаемое значение
22
+ *
23
+ * Возвращает `true`, если значение `value` является логическим (`boolean`), иначе `false`.
24
+ *
25
+ * ### Примеры использования
26
+ *
27
+ * ```js
28
+ * is_boolean(true); // Возвращает: true
29
+ * is_boolean(false); // Возвращает: true
30
+ * is_boolean(0); // Возвращает: false
31
+ * is_boolean('true'); // Возвращает: false
32
+ * is_boolean(null); // Возвращает: false
33
+ * is_boolean([]); // Возвращает: false
34
+ * is_boolean({}); // Возвращает: false
35
+ * is_boolean(new Boolean(true)); // Возвращает: false
36
+ * ```
37
+ *
38
+ * @param {any} value Проверяемая переменная.
39
+ * @returns {boolean} Возвращает `true`, если значение является логическим, иначе `false`.
40
+ */
41
+ export default function is_boolean(value) {
42
+ return typeof value === 'boolean';
43
+ }