请写出一个将字符串转换为数字的函数,例如将字符串“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) ;
}
}