as-type
Version:
Convert undetermined data types to the type you want
55 lines (54 loc) • 1.3 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.float = exports.integer = exports.boolean = void 0;
function boolean(value) {
if (value === true) {
return true;
}
if (value === false || value === null || value === undefined) {
return false;
}
var type = typeof value;
if (type === 'string') {
return ['true', 't', '1', 'yes', 'y'].indexOf(value.toLowerCase().trim()) >= 0;
}
else if (type === 'number') {
return value === 1;
}
return false;
}
exports.boolean = boolean;
function integer(value) {
if (Number.isInteger(value)) {
return value;
}
if (value === false || value === null) {
return 0;
}
if (typeof value === 'undefined') {
return 0;
}
var num = Number.parseInt(value);
if (Number.isInteger(num)) {
return num;
}
return 0;
}
exports.integer = integer;
function float(value) {
if (Number.isFinite(value)) {
return value;
}
if (value === false || value === null) {
return 0.0;
}
if (typeof value === 'undefined') {
return 0.0;
}
var num = Number.parseFloat(value);
if (Number.isFinite(num)) {
return num;
}
return 0;
}
exports.float = float;