@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
@@ -0,0 +1,68 @@
1
+ [Главная](../../../README.md) / [Классы](../../classes.md) / [Value](../Value.md) / isObject
2
+
3
+ [Исходный код](../../../src/classes/Value.mjs)
4
+
5
+ # Value.isObject
6
+
7
+ `Value.isObject` — Проверяет, является ли значение объектом.
8
+
9
+ ## Сигнатура метода
10
+
11
+ ```ts
12
+ isObject(): boolean;
13
+ ```
14
+
15
+ ## Описание
16
+
17
+ Метод `isObject` используется для проверки, является ли значение, хранящееся в экземпляре класса
18
+ `Value`, объектом. Метод использует оператор `typeof` для проверки типа значения и убеждается, что
19
+ значение не является `null`.
20
+
21
+ Метод использует функцию `is_object` для выполнения проверки.
22
+
23
+ ## Возвращаемое значение
24
+
25
+ Возвращает `true`, если значение является объектом, и `false` в противном случае.
26
+
27
+ ## Примеры использования
28
+
29
+ 1. Проверка объектов:
30
+
31
+ ```js
32
+ const valueInstance = new Value({});
33
+ const result = valueInstance.isObject();
34
+ // Результат: true
35
+
36
+ const valueInstance2 = new Value({ key: 'value' });
37
+ const result2 = valueInstance2.isObject();
38
+ // Результат: true
39
+ ```
40
+
41
+ 2. Проверка значений других типов:
42
+
43
+ ```js
44
+ const valueInstance = new Value(42);
45
+ const result = valueInstance.isObject();
46
+ // Результат: false (число)
47
+
48
+ const valueInstance2 = new Value('string');
49
+ const result2 = valueInstance2.isObject();
50
+ // Результат: false (строка)
51
+
52
+ const valueInstance3 = new Value(null);
53
+ const result3 = valueInstance3.isObject();
54
+ // Результат: false
55
+
56
+ const valueInstance4 = new Value(undefined);
57
+ const result4 = valueInstance4.isObject();
58
+ // Результат: false
59
+
60
+ const valueInstance5 = new Value([]);
61
+ const result5 = valueInstance5.isObject();
62
+ // Результат: false (массив)
63
+
64
+ const valueInstance6 = new Value(() => {});
65
+ const result6 = valueInstance6.isObject();
66
+ // Результат: false (функция)
67
+ ```
68
+
@@ -0,0 +1,72 @@
1
+ [Главная](../../../README.md) / [Классы](../../classes.md) / [Value](../Value.md) / isScalar
2
+
3
+ [Исходный код](../../../src/classes/Value.mjs)
4
+
5
+ # Value.isScalar
6
+
7
+ `Value.isScalar` — Проверяет, является ли значение скалярным.
8
+
9
+ ## Сигнатура метода
10
+
11
+ ```ts
12
+ isScalar(): boolean;
13
+ ```
14
+
15
+ ## Описание
16
+
17
+ Метод `isScalar` используется для проверки, является ли значение, хранящееся в экземпляре класса
18
+ `Value`, скалярным. Скалярные переменные — это переменные, содержащие `int`, `float`, `string`,
19
+ `bool` и `symbol`. Типы `array`, `object`, `null`, `undefined` — не скалярные.
20
+
21
+ Метод использует функцию `is_scalar` для выполнения проверки.
22
+
23
+ ## Возвращаемое значение
24
+
25
+ Возвращает `true`, если значение является скалярным, и `false` в противном случае.
26
+
27
+ ## Примеры использования
28
+
29
+ 1. Проверка скалярных значений:
30
+
31
+ ```js
32
+ const valueInstance1 = new Value(true);
33
+ const result1 = valueInstance1.isScalar();
34
+ // Результат: true
35
+
36
+ const valueInstance2 = new Value(42);
37
+ const result2 = valueInstance2.isScalar();
38
+ // Результат: true
39
+
40
+ const valueInstance3 = new Value('hello');
41
+ const result3 = valueInstance3.isScalar();
42
+ // Результат: true
43
+
44
+ const valueInstance4 = new Value(Symbol('symbol'));
45
+ const result4 = valueInstance4.isScalar();
46
+ // Результат: true
47
+ ```
48
+
49
+ 2. Проверка не скалярных значений:
50
+
51
+ ```js
52
+ const valueInstance1 = new Value(null);
53
+ const result1 = valueInstance1.isScalar();
54
+ // Результат: false
55
+
56
+ const valueInstance2 = new Value(undefined);
57
+ const result2 = valueInstance2.isScalar();
58
+ // Результат: false
59
+
60
+ const valueInstance3 = new Value({});
61
+ const result3 = valueInstance3.isScalar();
62
+ // Результат: false
63
+
64
+ const valueInstance4 = new Value([]);
65
+ const result4 = valueInstance4.isScalar();
66
+ // Результат: false
67
+
68
+ const valueInstance5 = new Value(() => {});
69
+ const result5 = valueInstance5.isScalar();
70
+ // Результат: false
71
+ ```
72
+
@@ -0,0 +1,67 @@
1
+ [Главная](../../../README.md) / [Классы](../../classes.md) / [Value](../Value.md) / isString
2
+
3
+ [Исходный код](../../../src/classes/Value.mjs)
4
+
5
+ # Value.isString
6
+
7
+ `Value.isString` — Проверяет, является ли значение строкой.
8
+
9
+ ## Сигнатура метода
10
+
11
+ ```ts
12
+ isString(): boolean;
13
+ ```
14
+
15
+ ## Описание
16
+
17
+ Метод `isString` используется для проверки, является ли значение, хранящееся в экземпляре класса
18
+ `Value`, строкой. Метод использует оператор `typeof` для проверки типа значения.
19
+
20
+ Метод использует функцию `is_string` для выполнения проверки.
21
+
22
+ ## Возвращаемое значение
23
+
24
+ Возвращает `true`, если значение является строкой, и `false` в противном случае.
25
+
26
+ ## Примеры использования
27
+
28
+ 1. Проверка строковых значений:
29
+
30
+ ```js
31
+ const valueInstance = new Value('hello');
32
+ const result = valueInstance.isString();
33
+ // Результат: true
34
+
35
+ const valueInstance2 = new Value('');
36
+ const result2 = valueInstance2.isString();
37
+ // Результат: true
38
+ ```
39
+
40
+ 2. Проверка значений других типов:
41
+
42
+ ```js
43
+ const valueInstance = new Value(42);
44
+ const result = valueInstance.isString();
45
+ // Результат: false (число)
46
+
47
+ const valueInstance2 = new Value(true);
48
+ const result2 = valueInstance2.isString();
49
+ // Результат: false (логическое значение)
50
+
51
+ const valueInstance3 = new Value(null);
52
+ const result3 = valueInstance3.isString();
53
+ // Результат: false
54
+
55
+ const valueInstance4 = new Value(undefined);
56
+ const result4 = valueInstance4.isString();
57
+ // Результат: false
58
+
59
+ const valueInstance5 = new Value({});
60
+ const result5 = valueInstance5.isString();
61
+ // Результат: false (объект)
62
+
63
+ const valueInstance6 = new Value([]);
64
+ const result6 = valueInstance6.isString();
65
+ // Результат: false (массив)
66
+ ```
67
+
@@ -0,0 +1,75 @@
1
+ [Главная](../../../README.md) / [Классы](../../classes.md) / [Value](../Value.md) / isSymbol
2
+
3
+ [Исходный код](../../../src/classes/Value.mjs)
4
+
5
+ # Value.isSymbol
6
+
7
+ `Value.isSymbol` — Проверяет, является ли значение символом.
8
+
9
+ ## Сигнатура метода
10
+
11
+ ```ts
12
+ isSymbol(): boolean;
13
+ ```
14
+
15
+ ## Описание
16
+
17
+ Метод `isSymbol` используется для проверки, является ли значение, хранящееся в экземпляре класса
18
+ `Value`, символом. Метод использует оператор `typeof` для проверки типа значения.
19
+
20
+ Метод использует функцию `is_symbol` для выполнения проверки.
21
+
22
+ ## Возвращаемое значение
23
+
24
+ Возвращает `true`, если значение является символом, и `false` в противном случае.
25
+
26
+ ## Примеры использования
27
+
28
+ 1. Проверка символов:
29
+
30
+ ```js
31
+ const valueInstance = new Value(Symbol('symbol'));
32
+ const result = valueInstance.isSymbol();
33
+ // Результат: true
34
+
35
+ const valueInstance2 = new Value(Symbol.iterator);
36
+ const result2 = valueInstance2.isSymbol();
37
+ // Результат: true
38
+ ```
39
+
40
+ 2. Проверка значений других типов:
41
+
42
+ ```js
43
+ const valueInstance = new Value('hello');
44
+ const result = valueInstance.isSymbol();
45
+ // Результат: false (строка)
46
+
47
+ const valueInstance2 = new Value(42);
48
+ const result2 = valueInstance2.isSymbol();
49
+ // Результат: false (число)
50
+
51
+ const valueInstance3 = new Value(true);
52
+ const result3 = valueInstance3.isSymbol();
53
+ // Результат: false (логическое значение)
54
+
55
+ const valueInstance4 = new Value(null);
56
+ const result4 = valueInstance4.isSymbol();
57
+ // Результат: false
58
+
59
+ const valueInstance5 = new Value(undefined);
60
+ const result5 = valueInstance5.isSymbol();
61
+ // Результат: false
62
+
63
+ const valueInstance6 = new Value({});
64
+ const result6 = valueInstance6.isSymbol();
65
+ // Результат: false (объект)
66
+
67
+ const valueInstance7 = new Value([]);
68
+ const result7 = valueInstance7.isSymbol();
69
+ // Результат: false (массив)
70
+
71
+ const valueInstance8 = new Value(() => {});
72
+ const result8 = valueInstance8.isSymbol();
73
+ // Результат: false (функция)
74
+ ```
75
+
@@ -0,0 +1,67 @@
1
+ [Главная](../../../README.md) / [Классы](../../classes.md) / [Value](../Value.md) / isUndefined
2
+
3
+ [Исходный код](../../../src/classes/Value.mjs)
4
+
5
+ # Value.isUndefined
6
+
7
+ `Value.isUndefined` — Проверяет, является ли значение `undefined`.
8
+
9
+ ## Сигнатура метода
10
+
11
+ ```ts
12
+ isUndefined(): boolean;
13
+ ```
14
+
15
+ ## Описание
16
+
17
+ Метод `isUndefined` используется для проверки, является ли значение, хранящееся в экземпляре класса
18
+ `Value`, `undefined`. Метод использует оператор `typeof` для проверки типа значения.
19
+
20
+ Метод использует функцию `is_undefined` для выполнения проверки.
21
+
22
+ ## Возвращаемое значение
23
+
24
+ Возвращает `true`, если значение является `undefined`, и `false` в противном случае.
25
+
26
+ ## Примеры использования
27
+
28
+ 1. Проверка значения `undefined`:
29
+
30
+ ```js
31
+ const valueInstance = new Value(undefined);
32
+ const result = valueInstance.isUndefined();
33
+ // Результат: true
34
+ ```
35
+
36
+ 2. Проверка значений других типов:
37
+
38
+ ```js
39
+ const valueInstance = new Value(null);
40
+ const result = valueInstance.isUndefined();
41
+ // Результат: false
42
+
43
+ const valueInstance2 = new Value(42);
44
+ const result2 = valueInstance2.isUndefined();
45
+ // Результат: false (число)
46
+
47
+ const valueInstance3 = new Value('hello');
48
+ const result3 = valueInstance3.isUndefined();
49
+ // Результат: false (строка)
50
+
51
+ const valueInstance4 = new Value(true);
52
+ const result4 = valueInstance4.isUndefined();
53
+ // Результат: false (логическое значение)
54
+
55
+ const valueInstance5 = new Value({});
56
+ const result5 = valueInstance5.isUndefined();
57
+ // Результат: false (объект)
58
+
59
+ const valueInstance6 = new Value([]);
60
+ const result6 = valueInstance6.isUndefined();
61
+ // Результат: false (массив)
62
+
63
+ const valueInstance7 = new Value(() => {});
64
+ const result7 = valueInstance7.isUndefined();
65
+ // Результат: false (функция)
66
+ ```
67
+
@@ -0,0 +1,164 @@
1
+ [Главная](../../../README.md) / [Классы](../../classes.md) / [Value](../Value.md) / print
2
+
3
+ [Исходный код](../../../src/classes/Value.mjs)
4
+
5
+ # Value.print
6
+
7
+ `Value.print` — Преобразует значение переменной в строку и выводит его на консоль.
8
+
9
+ ## Сигнатура метода
10
+
11
+ ```ts
12
+ print(): Value;
13
+ ```
14
+
15
+ ## Описание
16
+
17
+ Метод `print` используется для преобразования значения, хранящегося в экземпляре класса `Value`, в
18
+ строку и вывода его на консоль. Он обрабатывает массивы, объекты, классы, функции, символы и другие
19
+ типы данных, возвращая их строковое представление.
20
+
21
+ Метод использует функцию `print` для выполнения преобразования и вывода значения на консоль.
22
+
23
+ ## Возвращаемое значение
24
+
25
+ Возвращает текущий экземпляр класса `Value`.
26
+
27
+ ## Примеры использования
28
+
29
+ 1. Преобразование строки:
30
+
31
+ ```js
32
+ const valueInstance = new Value('example');
33
+ valueInstance.print();
34
+ ```
35
+
36
+ Вывод:
37
+
38
+ ```txt
39
+ "example"
40
+ ```
41
+
42
+ 2. Преобразование числа:
43
+
44
+ ```js
45
+ const valueInstance = new Value(123);
46
+ valueInstance.print();
47
+ ```
48
+
49
+ Вывод:
50
+
51
+ ```txt
52
+ 123
53
+ ```
54
+
55
+ 3. Преобразование булевых значений:
56
+
57
+ ```js
58
+ const valueInstance = new Value(true);
59
+ valueInstance.print();
60
+ ```
61
+
62
+ Вывод:
63
+
64
+ ```txt
65
+ true
66
+ ```
67
+
68
+ ```js
69
+ const valueInstance = new Value(false);
70
+ valueInstance.print();
71
+ ```
72
+
73
+ Вывод:
74
+
75
+ ```txt
76
+ false
77
+ ```
78
+
79
+ 4. Преобразование null и undefined:
80
+
81
+ ```js
82
+ const valueInstance = new Value(null);
83
+ valueInstance.print();
84
+ ```
85
+
86
+ Вывод:
87
+
88
+ ```txt
89
+ null
90
+ ```
91
+
92
+ ```js
93
+ const valueInstance = new Value(undefined);
94
+ valueInstance.print();
95
+ ```
96
+
97
+ Вывод:
98
+
99
+ ```txt
100
+ undefined
101
+ ```
102
+
103
+ 5. Преобразование массива:
104
+
105
+ ```js
106
+ const arr = [1, 2, 3];
107
+ const valueInstance = new Value(arr);
108
+ valueInstance.print();
109
+ ```
110
+
111
+ Вывод:
112
+
113
+ ```txt
114
+ [
115
+ 0: 1,
116
+ 1: 2,
117
+ 2: 3,
118
+ ]
119
+ ```
120
+
121
+ 6. Преобразование ассоциативного массива:
122
+
123
+ ```js
124
+ const obj = { key: 'value' };
125
+ const valueInstance = new Value(obj);
126
+ valueInstance.print();
127
+ ```
128
+
129
+ Вывод:
130
+
131
+ ```txt
132
+ {
133
+ key: "value",
134
+ }
135
+ ```
136
+
137
+ 7. Преобразование функции:
138
+
139
+ ```js
140
+ const func = function () {};
141
+ const valueInstance = new Value(func);
142
+ valueInstance.print();
143
+ ```
144
+
145
+ Вывод:
146
+
147
+ ```txt
148
+ function func() {}
149
+ ```
150
+
151
+ 8. Преобразование символа:
152
+
153
+ ```js
154
+ const symbol = Symbol('example');
155
+ const valueInstance = new Value(symbol);
156
+ valueInstance.print();
157
+ ```
158
+
159
+ Вывод:
160
+
161
+ ```txt
162
+ Symbol(example)
163
+ ```
164
+
@@ -0,0 +1,158 @@
1
+ [Главная](../../../README.md) / [Классы](../../classes.md) / [Value](../Value.md) / printType
2
+
3
+ [Исходный код](../../../src/classes/Value.mjs)
4
+
5
+ # Value.printType
6
+
7
+ `Value.printType` — Преобразует тип значения переменной в строку и выводит его на консоль.
8
+
9
+ ## Сигнатура метода
10
+
11
+ ```ts
12
+ printType(): Value;
13
+ ```
14
+
15
+ ## Описание
16
+
17
+ Метод `printType` используется для преобразования типа значения, хранящегося в экземпляре класса
18
+ `Value`, в строку и вывода его на консоль. Он обрабатывает массивы, объекты, классы, функции,
19
+ символы и другие типы данных, возвращая их строковое представление.
20
+
21
+ Метод использует функцию `print_type` для выполнения преобразования и вывода значения на консоль.
22
+
23
+ ## Возвращаемое значение
24
+
25
+ Возвращает текущий экземпляр класса `Value`.
26
+
27
+ ## Примеры использования
28
+
29
+ 1. Преобразование строки:
30
+
31
+ ```js
32
+ const valueInstance = new Value('example');
33
+ valueInstance.printType();
34
+ ```
35
+
36
+ Вывод:
37
+
38
+ ```txt
39
+ "string"
40
+ ```
41
+
42
+ 2. Преобразование числа:
43
+
44
+ ```js
45
+ const valueInstance = new Value(123);
46
+ valueInstance.printType();
47
+ ```
48
+
49
+ Вывод:
50
+
51
+ ```txt
52
+ "integer"
53
+ ```
54
+
55
+ 3. Преобразование булевых значений:
56
+
57
+ ```js
58
+ const valueInstance = new Value(true);
59
+ valueInstance.printType();
60
+ ```
61
+
62
+ Вывод:
63
+
64
+ ```txt
65
+ "boolean"
66
+ ```
67
+
68
+ ```js
69
+ const valueInstance = new Value(false);
70
+ valueInstance.printType();
71
+ ```
72
+
73
+ Вывод:
74
+
75
+ ```txt
76
+ "boolean"
77
+ ```
78
+
79
+ 4. Преобразование null и undefined:
80
+
81
+ ```js
82
+ const valueInstance = new Value(null);
83
+ valueInstance.printType();
84
+ ```
85
+
86
+ Вывод:
87
+
88
+ ```txt
89
+ "null"
90
+ ```
91
+
92
+ ```js
93
+ const valueInstance = new Value(undefined);
94
+ valueInstance.printType();
95
+ ```
96
+
97
+ Вывод:
98
+
99
+ ```txt
100
+ "undefined"
101
+ ```
102
+
103
+ 5. Преобразование массива:
104
+
105
+ ```js
106
+ const arr = [1, 2, 3];
107
+ const valueInstance = new Value(arr);
108
+ valueInstance.printType();
109
+ ```
110
+
111
+ Вывод:
112
+
113
+ ```txt
114
+ "array"
115
+ ```
116
+
117
+ 6. Преобразование ассоциативного массива:
118
+
119
+ ```js
120
+ const obj = { key: 'value' };
121
+ const valueInstance = new Value(obj);
122
+ valueInstance.printType();
123
+ ```
124
+
125
+ Вывод:
126
+
127
+ ```txt
128
+ "object"
129
+ ```
130
+
131
+ 7. Преобразование функции:
132
+
133
+ ```js
134
+ const func = function () {};
135
+ const valueInstance = new Value(func);
136
+ valueInstance.printType();
137
+ ```
138
+
139
+ Вывод:
140
+
141
+ ```txt
142
+ "function"
143
+ ```
144
+
145
+ 8. Преобразование символа:
146
+
147
+ ```js
148
+ const symbol = Symbol('example');
149
+ const valueInstance = new Value(symbol);
150
+ valueInstance.printType();
151
+ ```
152
+
153
+ Вывод:
154
+
155
+ ```txt
156
+ "symbol"
157
+ ```
158
+