反转字符串
编写一个函数,接受一个字符串作为输入,并返回反转后的字符串。
示例:
function reverseString(str) {
return str.split('').reverse().join('');
}
reverseString('hello'); // 输出: 'olleh'
```
找出数组中的最大值
编写一个函数,接受一个数字数组作为输入,并返回数组中的最大值。
示例:
function findMax(arr) {
return Math.max(...arr);
}
findMax([1, 3, 5, 2, 4]); // 输出: 5
```
判断字符串是否为回文
编写一个函数,接受一个字符串作为输入,并判断该字符串是否是回文字符串。回文字符串是指正着读和反着读都一样的字符串。
示例:
function isPalindrome(str) {
return str === str.split('').reverse().join('');
}
isPalindrome('level'); // 输出: true
```
统计字符串中每个字符的出现次数
编写一个函数,接受一个字符串作为输入,并返回一个对象,该对象包含字符串中每个字符作为键,以及对应字符出现的次数作为值。
示例:
function countCharacters(str) {
const count = {};
for (let char of str) {
count[char] = count[char] ? count[char] + 1 : 1;
}
return count;
}
countCharacters('hello'); // 输出: { h: 1, e: 1, l: 2, o: 1 }
```
判断两个字符串是否为同构
编写一个函数,接受两个字符串作为输入,并判断它们是否为同构字符串。同构字符串是指两个字符串中的字符可以被一一映射,且相同位置上的字符在两个字符串中必须相同。
示例:
function isIsomorphic(str1, str2) {
if (str1.length !== str2.length) {
return false;
}
const map1 = {};
const map2 = {};
for (let i = 0; i < str1.length; i++) {
const char1 = str1[i];
const char2 = str2[i];
if ((map1[char1] && map1[char1] !== char2) || (map2[char2] && map2[char2] !== char1)) {
return false;
}
map1[char1] = char2;
map2[char2] = char1;
}
return true;
}
isIsomorphic('egg', 'add'); // 输出: true
```