Библиотека Cash в JavaScript является облегчённой альтернативой jQuery, предоставляющей удобные методы для работы с DOM, событиями, анимациями и вспомогательными утилитами. Среди этих утилит есть функции для проверки типов данных, которые помогают писать безопасный и предсказуемый код.
Cash предоставляет простые методы для проверки строк, чисел, булевых значений, массивов и объектов. Основные функции:
$.isString(value) // Проверка на строку
$.isNumber(value) // Проверка на число
$.isBoolean(value) // Проверка на булево значение
$.isArray(value) // Проверка на массив
$.isPlainObject(value) // Проверка на простой объект ({}), исключая классы и функции
Примеры:
$.isString("Hello"); // true
$.isNumber(42); // true
$.isBoolean(false); // true
$.isArray([1, 2, 3]); // true
$.isPlainObject({a: 1}); // true
$.isPlainObject(new Date()); // false
Ключевой момент:
$.isPlainObjectпроверяет только объекты, созданные литералом{}или черезObject.create(null). Экземпляры классов и встроенные объекты не считаются «простыми».
Для работы с функциональными или DOM-сущностями библиотека предоставляет:
$.isFunction(value) // Проверка на функцию
$.isNode(value) // Проверка на DOM-узел
Примеры:
$.isFunction(function() {}); // true
$.isNode(document.body); // true
$.isNode({}); // false
Определение пустых значений важно для обработки пользовательского
ввода и данных из API. Cash использует метод $.isEmpty:
$.isEmpty(value);
Метод возвращает true для:
nullundefined""[]{}Примеры:
$.isEmpty(""); // true
$.isEmpty([]); // true
$.isEmpty({}); // true
$.isEmpty("text"); // false
$.isEmpty([1,2,3]); // false
Особенность:
$.isEmptyучитывает как структурные пустые значения, так и примитивные.
Для сложной валидации Cash предлагает дополнительные утилиты:
$.isNumeric(value) // Проверка на число (включая строки с числами)
$.isInteger(value) // Проверка на целое число
$.isFloat(value) // Проверка на число с плавающей точкой
Примеры:
$.isNumeric("123"); // true
$.isNumeric("12a3"); // false
$.isInteger(10); // true
$.isFloat(10.5); // true
Важно:
$.isNumericвозвращаетtrueдля строк, которые могут быть безопасно преобразованы в число.
Для глубокого анализа массивов и объектов применяются методы проверки элементов:
$.isArrayOfType(array, typeCheckFunction)
Пример использования:
$.isArrayOfType([1, 2, 3], $.isNumber); // true
$.isArrayOfType([1, "2", 3], $.isNumber); // false
Это полезно при проверке структурированных данных, например JSON-ответов API.
Методы Cash можно комбинировать для создания более сложной логики проверки:
if ($.isArray(data) && !$.isEmpty(data) && $.isArrayOfType(data, $.isPlainObject)) {
// Обработка массива объектов
}
Принцип: использование функций Cash для проверки типов позволяет избегать ошибок
TypeErrorпри манипуляции данными.
Cash поддерживает написание собственных функций для проверки:
function isPositiveNumber(value) {
return $.isNumber(value) && value > 0;
}
isPositiveNumber(5); // true
isPositiveNumber(-3); // false
Это расширяет возможности библиотеки и делает код более выразительным и безопасным.
$.isPlainObject вместо
typeof obj === 'object', чтобы исключить классы и
массивы.Использование проверок типов Cash повышает надёжность кода, облегчает отладку и предотвращает ошибки при работе с динамическими данными JavaScript.