maheshjs
Version:
This package helps you in solving day to day various simple challenges and makes you write code faster
140 lines (139 loc) • 2.44 kB
JavaScript
// src/Functions.ts
var getString = (length, specialChars) => {
let n = 32;
if (Number(length) >= 1) {
n = Number(length);
}
let strArray = [
"A",
"B",
"G",
"H",
"I",
"J",
"K",
"C",
"D",
"E",
"F",
"j",
"k",
"l",
"m",
"n",
"o",
"p",
"q",
"r",
"s",
"t",
"u",
"L",
"M",
"N",
"O",
"V",
"W",
"4",
"5",
"6",
"P",
"X",
"Y",
"Z",
"a",
"b",
"c",
"d",
"e",
"f",
"g",
"h",
"i",
"v",
"w",
"x",
"y",
"z",
"0",
"1",
"2",
"3",
"Q",
"R",
"S",
"T",
"U",
"7",
"8",
"9"
];
const specialArray = [
"!",
"@",
"#",
"$",
"%",
"^",
"&",
"*",
"-",
"_",
"=",
"+",
"?",
"/",
".",
"|",
"~"
];
if (specialChars) {
strArray = strArray.concat(specialArray);
}
;
let randomString = "";
for (let i = 0; i < n; i++) {
randomString += strArray[Math.floor(Math.random() * strArray.length)];
}
return randomString;
};
var getRandomInt = (min, max) => {
if (!min) min = 0;
if (!max) max = 1e8;
return Math.floor(Math.random() * (max - min + 1)) + min;
};
var getRandomFloat = (min, max, lengthAfterDot) => {
if (!min) min = 0;
if (!max) max = 1e8;
if (!lengthAfterDot || lengthAfterDot < 1) lengthAfterDot = 3;
return Number((Math.random() * (max - min) + min).toFixed(lengthAfterDot));
};
var isEven = (num, strict) => {
if (typeof num !== "number" && typeof num !== "string") return false;
if (strict && typeof num !== "number") return false;
return Number(num) % 2 === 0;
};
var isOdd = (num, strict) => {
if (typeof num !== "number" && typeof num !== "string") return false;
if (strict && typeof num !== "number") return false;
return Number(num) % 2 !== 0;
};
var getAverageByNumbersArray = (numbers) => {
if (!numbers?.length) return 0;
if (numbers?.length === 1) return numbers?.at(0);
return numbers?.reduce((acc, num) => acc + num, 0) / numbers?.length;
};
var hasDateTimePassed = (dateTimeString) => {
const inputDateTime = new Date(dateTimeString);
const currentDateTime = /* @__PURE__ */ new Date();
return inputDateTime < currentDateTime;
};
export {
getAverageByNumbersArray,
getRandomFloat,
getRandomInt,
getString,
hasDateTimePassed,
isEven,
isOdd
};