Bliss.js — это легковесная библиотека для работы с DOM и функциональными утилитами в JavaScript, которая предоставляет удобные методы для обработки данных, элементов и событий. Одной из фундаментальных возможностей является работа с преобразованием типов данных, что особенно важно при манипуляции DOM, взаимодействии с формами и обработке пользовательского ввода.
Bliss.js предлагает удобные методы для безопасного преобразования
строк в числа и чисел в строки. Основной подход заключается в
использовании функций B.parseInt(),
B.parseFloat() и встроенного метода
.toString().
let strNumber = "42";
let intNumber = B.parseInt(strNumber); // 42
let floatNumber = B.parseFloat("3.14"); // 3.14
let num = 100;
let str = num.toString(); // "100"
Особенности:
B.parseInt() и B.parseFloat() игнорируют
ведущие и завершающие пробелы.NaN..toString() всегда возвращает
строку даже для значений null и
undefined.Bliss.js содержит методы для явного и безопасного приведения значений
к логическому типу. Используется B.toBool():
let truthy = B.toBool(1); // true
let falsy = B.toBool(0); // false
let fromString = B.toBool("true"); // true
let fromEmptyString = B.toBool(""); // false
Ключевые моменты:
true.0, null,
undefined и false конвертируются в
false."true" и "false" корректно
интерпретируются как логические значения.Bliss.js упрощает сериализацию и десериализацию данных через методы
B.toJSON() и B.fromJSON():
let obj = { name: "Alice", age: 30 };
let jsonString = B.toJSON(obj); // '{"name":"Alice","age":30}'
let parsedObj = B.fromJSON(jsonString); // { name: "Alice", age: 30 }
Особенности:
B.toJSON() обрабатывает вложенные объекты и
массивы.try/catch
блок, что предотвращает аварийное завершение скрипта.Для массивов также существует функция B.arrayify(),
которая гарантирует, что любое значение будет приведено к массиву:
let single = 5;
let arr = B.arrayify(single); // [5]
let alreadyArray = [1, 2, 3];
let sameArray = B.arrayify(alreadyArray); // [1, 2, 3]
Bliss.js предоставляет методы для преобразования строк и чисел в
объекты Date:
let dateFromString = B.toDate("2026-01-14"); // Thu Jan 14 2026
let dateFromTimestamp = B.toDate(1673683200000); // Thu Jan 14 2026
Важные моменты:
Invalid Date.B.toDate() позволяет унифицировать обработку различных
форматов ввода.Для сценариев, где требуется динамическое определение типа, Bliss.js
использует метод B.cast(value, type):
let str = "123";
let num = B.cast(str, "number"); // 123
let booleanStr = "false";
let bool = B.cast(booleanStr, "boolean"); // false
let objStr = '{"key":"value"}';
let obj = B.cast(objStr, "object"); // { key: "value" }
Особенности:
"string",
"number", "boolean", "object",
"array", "date".input и textarea возвращаются как строки.
Преобразование через B.cast упрощает работу с числами и
логикой:let ageInput = document.querySelector("#age").value;
let age = B.cast(ageInput, "number");
B.cast позволяет автоматически
преобразовать их:let data = '{"price":"199.99","available":"true"}';
let parsed = B.fromJSON(data);
parsed.price = B.cast(parsed.price, "number");
parsed.available = B.cast(parsed.available, "boolean");
B.cast для динамического приведения
типов.Bliss.js обеспечивает единообразный и предсказуемый способ работы с типами, что делает код более надежным и легко поддерживаемым, особенно при взаимодействии с внешними данными и динамическими источниками.