@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
package/CHANGELOG.md CHANGED
@@ -1,3 +1,17 @@
1
+ # v0.0.3
2
+
3
+ ## Добавлено
4
+
5
+ ### Классы для работы с типами
6
+
7
+ - [Value](./docs/classes/Value.md) — Класс, представляющий обертку для значений различных
8
+ типов и предоставляющий методы для работы с ними.
9
+
10
+ ### Помощники для работы с типами данных
11
+
12
+ - [value](./docs/helpers/value.md) — Создает новый экземпляр класса `Value` с заданным
13
+ значением.
14
+
1
15
  # v0.0.2
2
16
 
3
17
  ## Добавлено
package/README.md CHANGED
@@ -12,7 +12,7 @@
12
12
 
13
13
  ## Установка
14
14
 
15
- ```
15
+ ```sh
16
16
  npm install @rogolev/value
17
17
  ```
18
18
 
@@ -28,6 +28,7 @@ import {
28
28
  is_int,
29
29
  is_float,
30
30
  gettype,
31
+ value,
31
32
  } from '@rogolev/value.js';
32
33
 
33
34
  // Создаем ассоциативный массив - контейнер пар ключ-значение
@@ -84,6 +85,23 @@ console.log(is_float(3.14)); // true
84
85
 
85
86
  // Получение типа
86
87
  console.log(gettype(stdClass)); // "class"
88
+
89
+ // Использование функции value для создания экземпляра класса Value
90
+ const valInstance = value(123);
91
+ console.log(valInstance.get()); // 123
92
+ console.log(valInstance.getType()); // 'integer'
93
+ console.log(valInstance.isNumber()); // true
94
+
95
+ // Преобразование значения в строку и вывод на консоль
96
+ valInstance.print(); // 123
97
+
98
+ // Преобразование значения в массив
99
+ const arrayInstance = valInstance.toArray();
100
+ console.log(arrayInstance.get()); // [123]
101
+
102
+ // Преобразование значения в объект
103
+ const objectInstance = valInstance.toObject();
104
+ console.log(objectInstance.get()); // { value: 123 }
87
105
  ```
88
106
 
89
107
  ## Автор
@@ -0,0 +1,48 @@
1
+ [Главная](../../../README.md) / [Классы](../../classes.md) / [Value](../Value.md) / constructor
2
+
3
+ [Исходный код](../../../src/classes/Value.mjs)
4
+
5
+ # Value.constructor
6
+
7
+ `Value.constructor` — Создает экземпляр класса `Value` с заданным значением.
8
+
9
+ ## Сигнатура метода
10
+
11
+ ```ts
12
+ constructor(value: any);
13
+ ```
14
+
15
+ ## Описание
16
+
17
+ Конструктор класса `Value` принимает значение и сохраняет его в приватном свойстве `#value`.
18
+ Значение не может быть изменено после создания экземпляра класса.
19
+
20
+ ## Параметры
21
+
22
+ - `value` (any): Значение, которое необходимо сохранить в экземпляре класса `Value`.
23
+
24
+ ## Примеры использования
25
+
26
+ 1. Создание экземпляра класса `Value` с числом:
27
+
28
+ ```js
29
+ const valueInstance = new Value(123);
30
+ // Свойство: #value = 123
31
+ ```
32
+
33
+ 2. Создание экземпляра класса `Value` с объектом:
34
+
35
+ ```js
36
+ const obj = { key: 'value' };
37
+ const valueInstance = new Value(obj);
38
+ // Свойство: #value = { key: 'value' }
39
+ ```
40
+
41
+ 3. Создание экземпляра класса `Value` с массивом:
42
+
43
+ ```js
44
+ const arr = [1, 2, 3];
45
+ const valueInstance = new Value(arr);
46
+ // Свойство: #value = [1, 2, 3]
47
+ ```
48
+
@@ -0,0 +1,51 @@
1
+ [Главная](../../../README.md) / [Классы](../../classes.md) / [Value](../Value.md) / get
2
+
3
+ [Исходный код](../../../src/classes/Value.mjs)
4
+
5
+ # Value.get
6
+
7
+ `Value.get` — Возвращает значение, хранящееся в экземпляре класса `Value`.
8
+
9
+ ## Сигнатура метода
10
+
11
+ ```ts
12
+ get(): any;
13
+ ```
14
+
15
+ ## Описание
16
+
17
+ Метод `get` используется для получения значения, переданного при создании экземпляра класса `Value`.
18
+ Это значение хранится в свойстве `#value` экземпляра и не может быть изменено после создания.
19
+
20
+ ## Возвращаемое значение
21
+
22
+ Возвращает значение, переданное при создании экземпляра класса `Value`.
23
+
24
+ ## Примеры использования
25
+
26
+ 1. Создание экземпляра класса `Value` и получение значения:
27
+
28
+ ```js
29
+ const valueInstance = new Value(123);
30
+ const result = valueInstance.get();
31
+ // Результат: 123
32
+ ```
33
+
34
+ 2. Создание экземпляра класса `Value` с объектом:
35
+
36
+ ```js
37
+ const obj = { key: 'value' };
38
+ const valueInstance = new Value(obj);
39
+ const result = valueInstance.get();
40
+ // Результат: { key: 'value' }
41
+ ```
42
+
43
+ 3. Создание экземпляра класса `Value` с массивом:
44
+
45
+ ```js
46
+ const arr = [1, 2, 3];
47
+ const valueInstance = new Value(arr);
48
+ const result = valueInstance.get();
49
+ // Результат: [1, 2, 3]
50
+ ```
51
+
@@ -0,0 +1,71 @@
1
+ [Главная](../../../README.md) / [Классы](../../classes.md) / [Value](../Value.md) / getType
2
+
3
+ [Исходный код](../../../src/classes/Value.mjs)
4
+
5
+ # Value.getType
6
+
7
+ `Value.getType` — Возвращает тип значения, хранящегося в экземпляре класса `Value`.
8
+
9
+ ## Сигнатура метода
10
+
11
+ ```ts
12
+ getType(): string;
13
+ ```
14
+
15
+ ## Описание
16
+
17
+ Метод `getType` используется для получения типа значения, переданного при создании экземпляра класса
18
+ `Value`. Тип значения определяется с помощью функции `gettype`, которая выполняет различные проверки
19
+ для определения типа.
20
+
21
+ Функция `gettype` выполняет следующие проверки:
22
+
23
+ 1. **Null**: Проверяет, является ли значение `null`.
24
+ 2. **NaN**: Проверяет, является ли значение `NaN`.
25
+ 3. **Undefined**: Проверяет, является ли значение `undefined`.
26
+ 4. **Infinity**: Проверяет, является ли значение бесконечностью.
27
+ 5. **Boolean**: Проверяет, является ли значение логическим.
28
+ 6. **Integer**: Проверяет, является ли значение целым числом.
29
+ 7. **BigInt**: Проверяет, является ли значение типом BigInt.
30
+ 8. **Float**: Проверяет, является ли значение числом с плавающей точкой.
31
+ 9. **String**: Проверяет, является ли значение строкой.
32
+ 10. **Symbol**: Проверяет, является ли значение символом.
33
+ 11. **Class**: Проверяет, является ли значение классом.
34
+ 12. **Function**: Проверяет, является ли значение функцией.
35
+ 13. **Array**: Проверяет, является ли значение массивом.
36
+ 14. **Object**: Проверяет, является ли значение объектом.
37
+
38
+ Если значение не соответствует ни одному из этих типов, функция возвращает результат `typeof value`.
39
+
40
+ ## Возвращаемое значение
41
+
42
+ Возвращает строку, представляющую тип значения, хранящегося в экземпляре класса `Value`.
43
+
44
+ ## Примеры использования
45
+
46
+ 1. Создание экземпляра класса `Value` и получение типа значения:
47
+
48
+ ```js
49
+ const valueInstance = new Value(123);
50
+ const result = valueInstance.getType();
51
+ // Результат: 'integer'
52
+ ```
53
+
54
+ 2. Создание экземпляра класса `Value` с объектом:
55
+
56
+ ```js
57
+ const obj = { key: 'value' };
58
+ const valueInstance = new Value(obj);
59
+ const result = valueInstance.getType();
60
+ // Результат: 'object'
61
+ ```
62
+
63
+ 3. Создание экземпляра класса `Value` с массивом:
64
+
65
+ ```js
66
+ const arr = [1, 2, 3];
67
+ const valueInstance = new Value(arr);
68
+ const result = valueInstance.getType();
69
+ // Результат: 'array'
70
+ ```
71
+
@@ -0,0 +1,67 @@
1
+ [Главная](../../../README.md) / [Классы](../../classes.md) / [Value](../Value.md) / isArray
2
+
3
+ [Исходный код](../../../src/classes/Value.mjs)
4
+
5
+ # Value.isArray
6
+
7
+ `Value.isArray` — Проверяет, является ли значение массивом.
8
+
9
+ ## Сигнатура метода
10
+
11
+ ```ts
12
+ isArray(): boolean;
13
+ ```
14
+
15
+ ## Описание
16
+
17
+ Метод `isArray` используется для проверки, является ли значение, хранящееся в экземпляре класса
18
+ `Value`, массивом. Массивом считается значение, которое является экземпляром класса `Array`.
19
+
20
+ Метод использует функцию `is_array` для выполнения проверки.
21
+
22
+ ## Возвращаемое значение
23
+
24
+ Возвращает `true`, если значение является массивом, и `false` в противном случае.
25
+
26
+ ## Примеры использования
27
+
28
+ 1. Проверка массива:
29
+
30
+ ```js
31
+ const valueInstance = new Value([1, 2, 3]);
32
+ const result = valueInstance.isArray();
33
+ // Результат: true
34
+ ```
35
+
36
+ 2. Проверка объекта:
37
+
38
+ ```js
39
+ const valueInstance = new Value({ key: 'value' });
40
+ const result = valueInstance.isArray();
41
+ // Результат: false
42
+ ```
43
+
44
+ 3. Проверка строки:
45
+
46
+ ```js
47
+ const valueInstance = new Value('example');
48
+ const result = valueInstance.isArray();
49
+ // Результат: false
50
+ ```
51
+
52
+ 4. Проверка числа:
53
+
54
+ ```js
55
+ const valueInstance = new Value(123);
56
+ const result = valueInstance.isArray();
57
+ // Результат: false
58
+ ```
59
+
60
+ 5. Проверка булевого значения:
61
+
62
+ ```js
63
+ const valueInstance = new Value(true);
64
+ const result = valueInstance.isArray();
65
+ // Результат: false
66
+ ```
67
+
@@ -0,0 +1,68 @@
1
+ [Главная](../../../README.md) / [Классы](../../classes.md) / [Value](../Value.md) / isAssoc
2
+
3
+ [Исходный код](../../../src/classes/Value.mjs)
4
+
5
+ # Value.isAssoc
6
+
7
+ `Value.isAssoc` — Проверяет, является ли значение ассоциативным массивом.
8
+
9
+ ## Сигнатура метода
10
+
11
+ ```ts
12
+ isAssoc(): boolean;
13
+ ```
14
+
15
+ ## Описание
16
+
17
+ Метод `isAssoc` используется для проверки, является ли значение, хранящееся в экземпляре класса
18
+ `Value`, ассоциативным массивом. Ассоциативным массивом считается объект, который не является
19
+ массивом и не является `null`.
20
+
21
+ Метод использует функцию `is_assoc` для выполнения проверки.
22
+
23
+ ## Возвращаемое значение
24
+
25
+ Возвращает `true`, если значение является ассоциативным массивом, и `false` в противном случае.
26
+
27
+ ## Примеры использования
28
+
29
+ 1. Проверка ассоциативного массива:
30
+
31
+ ```js
32
+ const valueInstance = new Value({ key: 'value' });
33
+ const result = valueInstance.isAssoc();
34
+ // Результат: true
35
+ ```
36
+
37
+ 2. Проверка массива:
38
+
39
+ ```js
40
+ const valueInstance = new Value([1, 2, 3]);
41
+ const result = valueInstance.isAssoc();
42
+ // Результат: false
43
+ ```
44
+
45
+ 3. Проверка null:
46
+
47
+ ```js
48
+ const valueInstance = new Value(null);
49
+ const result = valueInstance.isAssoc();
50
+ // Результат: false
51
+ ```
52
+
53
+ 4. Проверка строки:
54
+
55
+ ```js
56
+ const valueInstance = new Value('example');
57
+ const result = valueInstance.isAssoc();
58
+ // Результат: false
59
+ ```
60
+
61
+ 5. Проверка числа:
62
+
63
+ ```js
64
+ const valueInstance = new Value(123);
65
+ const result = valueInstance.isAssoc();
66
+ // Результат: false
67
+ ```
68
+
@@ -0,0 +1,52 @@
1
+ [Главная](../../../README.md) / [Классы](../../classes.md) / [Value](../Value.md) / isBigInt
2
+
3
+ [Исходный код](../../../src/classes/Value.mjs)
4
+
5
+ # Value.isBigInt
6
+
7
+ `Value.isBigInt` — Проверяет, является ли значение типом BigInt.
8
+
9
+ ## Сигнатура метода
10
+
11
+ ```ts
12
+ isBigInt(): boolean;
13
+ ```
14
+
15
+ ## Описание
16
+
17
+ Метод `isBigInt` используется для проверки, является ли значение, хранящееся в экземпляре класса
18
+ `Value`, типом BigInt. BigInt - это встроенный тип данных в JavaScript, который используется для
19
+ представления целых чисел произвольной длины.
20
+
21
+ Метод использует функцию `is_bigint` для выполнения проверки.
22
+
23
+ ## Возвращаемое значение
24
+
25
+ Возвращает `true`, если значение является типом BigInt, и `false` в противном случае.
26
+
27
+ ## Примеры использования
28
+
29
+ 1. Проверка значения типа BigInt:
30
+
31
+ ```js
32
+ const valueInstance = new Value(123n);
33
+ const result = valueInstance.isBigInt();
34
+ // Результат: true
35
+ ```
36
+
37
+ 2. Проверка значения типа Number:
38
+
39
+ ```js
40
+ const valueInstance = new Value(123);
41
+ const result = valueInstance.isBigInt();
42
+ // Результат: false
43
+ ```
44
+
45
+ 3. Проверка строки:
46
+
47
+ ```js
48
+ const valueInstance = new Value('123');
49
+ const result = valueInstance.isBigInt();
50
+ // Результат: false
51
+ ```
52
+
@@ -0,0 +1,60 @@
1
+ [Главная](../../../README.md) / [Классы](../../classes.md) / [Value](../Value.md) / isBool
2
+
3
+ [Исходный код](../../../src/classes/Value.mjs)
4
+
5
+ # Value.isBool
6
+
7
+ `Value.isBool` — Проверяет, является ли значение логическим (булевым).
8
+
9
+ ## Сигнатура метода
10
+
11
+ ```ts
12
+ isBool(): boolean;
13
+ ```
14
+
15
+ ## Описание
16
+
17
+ Метод `isBool` используется для проверки, является ли значение, хранящееся в экземпляре класса
18
+ `Value`, логическим (булевым). Логическим значением считается значение, которое является `true` или
19
+ `false`.
20
+
21
+ Метод использует функцию `is_bool` для выполнения проверки.
22
+
23
+ ## Возвращаемое значение
24
+
25
+ Возвращает `true`, если значение является логическим, и `false` в противном случае.
26
+
27
+ ## Примеры использования
28
+
29
+ 1. Проверка значения `true`:
30
+
31
+ ```js
32
+ const valueInstance = new Value(true);
33
+ const result = valueInstance.isBool();
34
+ // Результат: true
35
+ ```
36
+
37
+ 2. Проверка значения `false`:
38
+
39
+ ```js
40
+ const valueInstance = new Value(false);
41
+ const result = valueInstance.isBool();
42
+ // Результат: true
43
+ ```
44
+
45
+ 3. Проверка строки:
46
+
47
+ ```js
48
+ const valueInstance = new Value('true');
49
+ const result = valueInstance.isBool();
50
+ // Результат: false
51
+ ```
52
+
53
+ 4. Проверка числа:
54
+
55
+ ```js
56
+ const valueInstance = new Value(1);
57
+ const result = valueInstance.isBool();
58
+ // Результат: false
59
+ ```
60
+
@@ -0,0 +1,60 @@
1
+ [Главная](../../../README.md) / [Классы](../../classes.md) / [Value](../Value.md) / isBoolean
2
+
3
+ [Исходный код](../../../src/classes/Value.mjs)
4
+
5
+ # Value.isBoolean
6
+
7
+ `Value.isBoolean` — Проверяет, является ли значение логическим (булевым).
8
+
9
+ ## Сигнатура метода
10
+
11
+ ```ts
12
+ isBoolean(): boolean;
13
+ ```
14
+
15
+ ## Описание
16
+
17
+ Метод `isBoolean` используется для проверки, является ли значение, хранящееся в экземпляре класса
18
+ `Value`, логическим (булевым). Логическим значением считается значение, которое является `true` или
19
+ `false`.
20
+
21
+ Метод использует функцию `is_bool` для выполнения проверки.
22
+
23
+ ## Возвращаемое значение
24
+
25
+ Возвращает `true`, если значение является логическим, и `false` в противном случае.
26
+
27
+ ## Примеры использования
28
+
29
+ 1. Проверка значения `true`:
30
+
31
+ ```js
32
+ const valueInstance = new Value(true);
33
+ const result = valueInstance.isBoolean();
34
+ // Результат: true
35
+ ```
36
+
37
+ 2. Проверка значения `false`:
38
+
39
+ ```js
40
+ const valueInstance = new Value(false);
41
+ const result = valueInstance.isBoolean();
42
+ // Результат: true
43
+ ```
44
+
45
+ 3. Проверка строки:
46
+
47
+ ```js
48
+ const valueInstance = new Value('true');
49
+ const result = valueInstance.isBoolean();
50
+ // Результат: false
51
+ ```
52
+
53
+ 4. Проверка числа:
54
+
55
+ ```js
56
+ const valueInstance = new Value(1);
57
+ const result = valueInstance.isBoolean();
58
+ // Результат: false
59
+ ```
60
+
@@ -0,0 +1,55 @@
1
+ [Главная](../../../README.md) / [Классы](../../classes.md) / [Value](../Value.md) / isClass
2
+
3
+ [Исходный код](../../../src/classes/Value.mjs)
4
+
5
+ # Value.isClass
6
+
7
+ `Value.isClass` — Проверяет, является ли значение классом.
8
+
9
+ ## Сигнатура метода
10
+
11
+ ```ts
12
+ isClass(): boolean;
13
+ ```
14
+
15
+ ## Описание
16
+
17
+ Метод `isClass` используется для проверки, является ли значение, хранящееся в экземпляре класса
18
+ `Value`, классом. Классом считается значение, которое является функцией и имеет свойство
19
+ `prototype`, являющееся объектом.
20
+
21
+ Метод использует функцию `is_class` для выполнения проверки.
22
+
23
+ ## Возвращаемое значение
24
+
25
+ Возвращает `true`, если значение является классом, и `false` в противном случае.
26
+
27
+ ## Примеры использования
28
+
29
+ 1. Проверка класса:
30
+
31
+ ```js
32
+ class MyClass {}
33
+ const valueInstance = new Value(MyClass);
34
+ const result = valueInstance.isClass();
35
+ // Результат: true
36
+ ```
37
+
38
+ 2. Проверка функции:
39
+
40
+ ```js
41
+ const myFunction = function () {};
42
+ const valueInstance = new Value(myFunction);
43
+ const result = valueInstance.isClass();
44
+ // Результат: false
45
+ ```
46
+
47
+ 3. Проверка объекта:
48
+
49
+ ```js
50
+ const myObject = {};
51
+ const valueInstance = new Value(myObject);
52
+ const result = valueInstance.isClass();
53
+ // Результат: false
54
+ ```
55
+
@@ -0,0 +1,84 @@
1
+ [Главная](../../../README.md) / [Классы](../../classes.md) / [Value](../Value.md) / isEmpty
2
+
3
+ [Исходный код](../../../src/classes/Value.mjs)
4
+
5
+ # Value.isEmpty
6
+
7
+ `Value.isEmpty` — Проверяет, является ли значение, хранящееся в экземпляре класса `Value`,
8
+ пустым.
9
+
10
+ ## Сигнатура метода
11
+
12
+ ```ts
13
+ isEmpty(): boolean;
14
+ ```
15
+
16
+ ## Описание
17
+
18
+ Метод `isEmpty` используется для проверки, является ли значение, хранящееся в экземпляре класса
19
+ `Value`, пустым. Пустыми считаются значения `null`, `undefined`, пустая строка, `0`, `false`, пустой
20
+ массив и пустой объект.
21
+
22
+ Метод использует функцию `empty` для выполнения проверки.
23
+
24
+ ## Возвращаемое значение
25
+
26
+ Возвращает `true`, если значение пустое, и `false` в противном случае.
27
+
28
+ ## Примеры использования
29
+
30
+ 1. Проверка пустых значений:
31
+
32
+ ```js
33
+ const valueInstance1 = new Value(null);
34
+ const result1 = valueInstance1.isEmpty();
35
+ // Результат: true
36
+
37
+ const valueInstance2 = new Value(undefined);
38
+ const result2 = valueInstance2.isEmpty();
39
+ // Результат: true
40
+
41
+ const valueInstance3 = new Value('');
42
+ const result3 = valueInstance3.isEmpty();
43
+ // Результат: true
44
+
45
+ const valueInstance4 = new Value(0);
46
+ const result4 = valueInstance4.isEmpty();
47
+ // Результат: true
48
+
49
+ const valueInstance5 = new Value(false);
50
+ const result5 = valueInstance5.isEmpty();
51
+ // Результат: true
52
+
53
+ const valueInstance6 = new Value([]);
54
+ const result6 = valueInstance6.isEmpty();
55
+ // Результат: true
56
+
57
+ const valueInstance7 = new Value({});
58
+ const result7 = valueInstance7.isEmpty();
59
+ // Результат: true
60
+ ```
61
+
62
+ 2. Проверка непустых значений:
63
+
64
+ ```js
65
+ const valueInstance1 = new Value('example');
66
+ const result1 = valueInstance1.isEmpty();
67
+ // Результат: false
68
+
69
+ const valueInstance2 = new Value(123);
70
+ const result2 = valueInstance2.isEmpty();
71
+ // Результат: false
72
+
73
+ const valueInstance3 = new Value(true);
74
+ const result3 = valueInstance3.isEmpty();
75
+ // Результат: false
76
+
77
+ const valueInstance4 = new Value([1, 2, 3]);
78
+ const result4 = valueInstance4.isEmpty();
79
+ // Результат: false
80
+
81
+ const valueInstance5 = new Value({ key: 'value' });
82
+ const result5 = valueInstance5.isEmpty();
83
+ // Результат: false
84
+ ```