- 请写出一个将字符串转换为数字的函数,例如将字符串“123”转换为数字123。
function stringToNumber(str) {
return Number(str);
}
- 请写出一个将数字转换为字符串的函数,例如将数字123转换为字符串“123”。
function numberToString(num) {
return num.toString();
}
- 请写出一个判断一个字符串是否为回文字符串的函数,例如字符串“racecar”是回文字符串。
function isPalindrome(str) {
return str === str.split('').reverse().join('');
}
- 请写出一个查找数组中最大值的函数。
function findMax(arr) {
return Math.max(...arr);
}
- 请写出一个查找数组中最小值的函数。
function findMin(arr) {
return Math.min(...arr);
}
- 请写出一个将数组元素顺序颠倒的函数。
function reverseArray(arr) {
return arr.reverse();
}
- 请写出一个计算数组中所有元素之和的函数。
function sumArray(arr) {
return arr.reduce((a, b) => a + b, 0);
}
- 请写出一个将数组去重的函数。
function uniqueArray(arr) {
return Array.from(new Set(arr));
}
- 请写出一个将字符串中的每个单词首字母变为大写的函数,例如将字符串“hello world”转换为“Hello World”。
function capitalizeWords(str) {
return str.replace(/\\b\\w/g, l => l.toUpperCase());
}
- 请写出一个检查字符串中是否包含指定子字符串的函数。
function containsString(str, subStr) {
return str.includes(subStr);
}
- 请写出一个将字符串中出现的所有大写字母转换为小写字母的函数。
function toLowerCase(str) {
return str.replace(/[A-Z]/g, l => l.toLowerCase());
}
- 请写出一个将字符串中出现的所有小写字母转换为大写字母的函数。
function toUpperCase(str) {
return str.replace(/[a-z]/g, l => l.toUpperCase());
}
- 请写出一个将字符串中每个单词的首字母变为大写字母,其他字母变为小写字母的函数,例如将字符串“HELLO WORLD”转换为“Hello World”。
function capitalizeFirstLetter(str) {
return str.toLowerCase().replace(/\\b[a-z]/g, l => l.toUpperCase());
}
- 请写出一个将字符串中每个单词倒序排列的函数,例如将字符串“hello world”转换为“olleh dlrow”。
function reverseWords(str) {
return str.split(' ').map(word => word.split('').reverse().join('')).join(' ');
}
- 请写出一个生成指定长度的随机字母数字字符串的函数。
function generateRandomString(length) {
let result = '';
const characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
for (let i = 0; i < length; i++) {
result += characters.charAt(Math.floor(Math.random() * characters.length));
}
return result;
}
- 请写出一个按照指定格式输出当前日期和时间的函数,例如输出“2021年12月31日 23:59:59”。
function getCurrentDateTime() {
const date = new Date();
const year = date.getFullYear();
const month = String(date.getMonth() + 1).padStart(2, '0');
const day = String(date.getDate()).padStart(2, '0');
const hours = String(date.getHours()).padStart(2, '0');
const minutes = String(date.getMinutes()).padStart(2, '0');
const seconds = String(date.getSeconds()).padStart(2, '0');
return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`;
}
- 请写出一个计算给定两个日期之间相差的天数的函数。
function getDaysBetweenDates(date1, date2) {
const oneDay = 24 * 60 * 60 * 1000;
const diffDays = Math.round(Math.abs((date2 - date1) / oneDay));
return diffDays;
}
- 请写出一个判断一个数是否为质数的函数。
function isPrime(num) {
if (num <= 1) {
return false;
}
for (let i = 2; i <= Math.sqrt(num); i++) {
if (num % i === 0) {
return false;
}
}
return true;
}
- 请写出一个将给定数字转换为罗马数字的函数,例如将数字4转换为罗马数字“IV”。
function intToRoman(num) {
const romanMap = {
M: 1000,
CM: 900,
D: 500,
CD: 400,
C: 100,
XC: 90,
L: 50,
XL: 40,
X: 10,
IX: 9,
V: 5,
IV: 4,
I: 1,
};
let result = '';
for (let key in romanMap) {
while (num >= romanMap[key]) {
result += key;
num -= romanMap[key];
}
}
return result;
}
- 请写出一个计算给定两个整数的最大公约数的函数。
function getGreatestCommonDivisor(num1, num2) {
if (num2 === 0) {
return num1;
}
return getGreatestCommonDivisor(num2, num1 % num2);
}
}