Bliss.js предоставляет набор утилит для удобного и эффективного манипулирования строками, позволяя значительно сократить количество стандартного JavaScript-кода и повысить читаемость. Основные функции охватывают преобразование регистров, проверку содержания строки, форматирование и работу с шаблонами.
Bliss.js содержит методы для изменения регистра строк без
необходимости использования стандартных toUpperCase и
toLowerCase.
B.str.upper(str) — возвращает строку в
верхнем регистре:B.str.upper('hello world'); // 'HELLO WORLD'
B.str.lower(str) — возвращает строку в
нижнем регистре:B.str.lower('HELLO WORLD'); // 'hello world'
B.str.capitalize(str) — делает первую
букву строки заглавной, остальные — строчными:B.str.capitalize('javascript'); // 'Javascript'
B.str.title(str) — преобразует первую
букву каждого слова в заглавную:B.str.title('bliss js utilities'); // 'Bliss Js Utilities'
Эти методы полезны при обработке пользовательского ввода, генерации заголовков и стандартизации данных перед сохранением.
Bliss.js предоставляет удобные функции для проверки строк на соответствие определённым условиям:
B.str.contains(str, substring) —
проверяет, содержит ли строка подстроку:B.str.contains('Bliss.js library', 'library'); // true
B.str.startsWith(str, prefix) —
проверяет начало строки:B.str.startsWith('Bliss.js', 'Bliss'); // true
B.str.endsWith(str, suffix) —
проверяет конец строки:B.str.endsWith('Bliss.js', '.js'); // true
B.str.isEmpty(str) — возвращает
true, если строка пустая или содержит только пробелы:B.str.isEmpty(' '); // true
Утилиты Bliss.js позволяют эффективно управлять пробелами и символами вокруг текста:
B.str.trim(str) — убирает пробелы с
начала и конца строки:B.str.trim(' Bliss.js '); // 'Bliss.js'
B.str.trimStart(str) и
B.str.trimEnd(str) — обрезают пробелы
только с одной стороны.
B.str.squish(str) — удаляет лишние
пробелы между словами, оставляя по одному:
B.str.squish('Bliss js utilities'); // 'Bliss js utilities'
B.str.normalize(str) — приводит строку
к нормализованной форме Unicode, что важно для работы с различными
символами:B.str.normalize('é'); // 'é' в стандартной форме NFC
Bliss.js упрощает работу с массивами строк и объединением:
B.str.split(str, separator) — аналог
String.prototype.split, но с дополнительной обработкой
пустых элементов:B.str.split('a,b,,c', ','); // ['a','b','c']
B.str.join(array, separator) —
объединяет массив в строку с заданным разделителем:B.str.join(['Bliss', 'js', 'library'], ' '); // 'Bliss js library'
B.str.lines(str) — разбивает текст на
массив строк по переносу строки:B.str.lines('line1\nline2\nline3'); // ['line1','line2','line3']
Bliss.js облегчает динамическое формирование строк:
B.str.replace(str, search, replace) —
заменяет подстроку или регулярное выражение:B.str.replace('Hello world', 'world', 'Bliss'); // 'Hello Bliss'
B.str.format(str, values) —
форматирует строку с подстановкой значений по ключам:B.str.format('Hello {name}, welcome to {place}', { name: 'Alice', place: 'Bliss.js' });
// 'Hello Alice, welcome to Bliss.js'
B.str.template(strings, ...values) —
альтернативный способ работы с шаблонами, совместимый с tagged
templates:B.str.template`Hello ${'Alice'}, today is ${'Tuesday'}`; // 'Hello Alice, today is Tuesday'
Bliss.js поддерживает утилиты для работы с кодировками и безопасного вывода:
B.str.escapeHTML(str) — заменяет
специальные символы на HTML-сущности:B.str.escapeHTML('<div>Bliss</div>'); // '<div>Bliss</div>'
B.str.unescapeHTML(str) — обратная
операция:B.str.unescapeHTML('<div>Bliss</div>'); // '<div>Bliss</div>'
B.str.urlEncode(str) и
B.str.urlDecode(str) — кодирование и
декодирование для безопасной передачи в URL:B.str.urlEncode('Bliss.js & utilities'); // 'Bliss.js%20%26%20utilities'
B.str.urlDecode('Bliss.js%20%26%20utilities'); // 'Bliss.js & utilities'
Bliss.js расширяет работу с регулярными выражениями через удобные методы:
B.str.match(str, regex) — возвращает
все совпадения или пустой массив:B.str.match('abc123def', /\d+/g); // ['123']
B.str.test(str, regex) — проверяет,
соответствует ли строка шаблону:B.str.test('abc123', /^[a-z]+\d+$/); // true
B.str.replaceAll(str, regex, replace)
— заменяет все совпадения по шаблону:B.str.replaceAll('foo bar foo', /foo/g, 'baz'); // 'baz bar baz'
Благодаря комбинации функций можно создавать компактные цепочки обработки строк:
B.str.squish(
B.str.capitalize(
B.str.trim(' bliss js library ')
)
); // 'Bliss js library'
Bliss.js позволяет легко объединять проверку, очистку и форматирование без громоздкого кода, повышая читаемость и поддерживаемость.
Этот набор утилит делает работу со строками более интуитивной, устраняя необходимость в повторяющемся коде и обеспечивая единый стиль обработки текста во всех проектах на JavaScript.