This commit is contained in:
Benjamin Toby 2025-05-15 08:41:24 +01:00
parent 04a56b5bc3
commit 4adb5af430
3 changed files with 54 additions and 5 deletions

View File

@ -11,18 +11,40 @@ exports.default = numberfy;
* numberfy("123.456", 3) // 123.456
*/
function numberfy(num, decimals) {
var _a;
try {
const numberfiedNum = Number(num);
const numberString = String(num)
.replace(/[^0-9\.]/g, "")
.replace(/\.$/, "");
if (!numberString.match(/./))
return 0;
const existingDecimals = numberString.match(/\./)
? (_a = numberString.split(".").pop()) === null || _a === void 0 ? void 0 : _a.length
: undefined;
const numberfiedNum = Number(numberString);
if (typeof numberfiedNum !== "number")
return 0;
if (isNaN(numberfiedNum))
return 0;
if (decimals)
return Number(numberfiedNum.toFixed(decimals));
if (existingDecimals)
return Number(numberfiedNum.toFixed(existingDecimals));
return Math.round(numberfiedNum);
}
catch ( /** @type {any} */error) {
catch (error) {
console.log(`Numberfy ERROR: ${error.message}`);
return 0;
}
}
// OLD FUNCTION
// try {
// const numberfiedNum = Number(num);
// if (typeof numberfiedNum !== "number") return 0;
// if (isNaN(numberfiedNum)) return 0;
// if (decimals) return Number(numberfiedNum.toFixed(decimals));
// return Math.round(numberfiedNum);
// } catch (/** @type {any} */ error: any) {
// console.log(`Numberfy ERROR: ${error.message}`);
// return 0;
// }

View File

@ -9,13 +9,40 @@
*/
export default function numberfy(num: any, decimals?: number): number {
try {
const numberfiedNum = Number(num);
const numberString = String(num)
.replace(/[^0-9\.]/g, "")
.replace(/\.$/, "");
if (!numberString.match(/./)) return 0;
const existingDecimals = numberString.match(/\./)
? numberString.split(".").pop()?.length
: undefined;
const numberfiedNum = Number(numberString);
if (typeof numberfiedNum !== "number") return 0;
if (isNaN(numberfiedNum)) return 0;
if (decimals) return Number(numberfiedNum.toFixed(decimals));
if (existingDecimals)
return Number(numberfiedNum.toFixed(existingDecimals));
return Math.round(numberfiedNum);
} catch (/** @type {any} */ error: any) {
} catch (error: any) {
console.log(`Numberfy ERROR: ${error.message}`);
return 0;
}
}
// OLD FUNCTION
// try {
// const numberfiedNum = Number(num);
// if (typeof numberfiedNum !== "number") return 0;
// if (isNaN(numberfiedNum)) return 0;
// if (decimals) return Number(numberfiedNum.toFixed(decimals));
// return Math.round(numberfiedNum);
// } catch (/** @type {any} */ error: any) {
// console.log(`Numberfy ERROR: ${error.message}`);
// return 0;
// }

View File

@ -1,6 +1,6 @@
{
"name": "@moduletrace/datasquirel",
"version": "4.6.0",
"version": "4.6.1",
"description": "Cloud-based SQL data management tool",
"main": "dist/index.js",
"bin": {