0.0.5 • Published 9 months ago

@rogolev/value v0.0.5

Weekly downloads
-
License
MIT
Repository
github
Last release
9 months ago

value.js

value.js Библиотека для JavaScript, переосмысливающая типы данных и работу с ними.

Документация

Типы данных в value.js.

Классы

Помощники для работы с типами данных value.js

Установка

npm install @rogolev/value

Примеры использования

import {
    array,
    is_array,
    is_object,
    is_class,
    is_function,
    is_int,
    is_float,
    gettype,
    value,
} from '@rogolev/value.js';

// Создаем ассоциативный массив - контейнер пар ключ-значение
const assoc = array({ key1: 'value1', key2: 'value2', key3: 'value3' });

console.log(assoc); // {key1: 'value1', key2: 'value2', key3: 'value3'}

// Ассоциативные массивы создаются с помощью конструкции Object.create(null)
console.log(Object.getPrototypeOf(assoc)); // null

// Функция array добавляет итератор Symbol.iterator к ассоциативным массивам
for (const [key, value] of assoc) {
    console.log(key, value);
}

// Ассоциативные массивы являются массивами
console.log(is_array(assoc)); // true

// Списки являются массивами
console.log(is_array([1, 2, 3])); // true

class stdClass {}
function MyFunction() {}

const object = new stdClass();
const objFunc = new MyFunction();

// Экземпляры классов не являются массивами
console.log(is_array(object)); // false

// Экземпляр класса является объектом
console.log(is_object(object)); // true

// Экземпляр функции не является объектом
console.log(is_object(objFunc)); // false

// Класс является классом
console.log(is_class(stdClass)); // true

// Функция не является классом
console.log(is_class(MyFunction)); // false

// Функция является функцией
console.log(is_function(MyFunction)); // true

// Класс не является функцией
console.log(is_function(stdClass)); // false

// Целое число
console.log(is_int(3)); // true

// Число с плавающей точкой
console.log(is_float(3.14)); // true

// Получение типа
console.log(gettype(stdClass)); // "class"

// Использование функции value для создания экземпляра класса Value
const valInstance = value(123);
console.log(valInstance.get()); // 123
console.log(valInstance.getType()); // 'integer'
console.log(valInstance.isNumber()); // true

// Преобразование значения в строку и вывод на консоль
valInstance.print(); // 123

// Преобразование значения в массив
const arrayInstance = valInstance.toArray();
console.log(arrayInstance.get()); // [123]

// Преобразование значения в объект
const objectInstance = valInstance.toObject();
console.log(objectInstance.get()); // { value: 123 }

Автор

Роголев Дмитрий Александрович

drogolev@internet.ru

https://github.com/dmitry-rogolev

Лицензия

Этот проект лицензируется на условиях лицензии MIT. Подробности см. в файле LICENSE.

0.0.5

9 months ago

0.0.4

9 months ago

0.0.3

10 months ago

0.0.2

10 months ago

0.0.1

10 months ago