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