Задачи по javascript c freecodecamp.com
1. Перевернуть данную строку.
1 2 3 4 |
function reverseString(str) { return str; } |
Тесты:
reverseString("hello")
"olleh"
reverseString("Howdy")
"ydwoH"
reverseString("Greetings from Earth")
"htraE morf sgniteerG"
2. Найти факториал данного числа.
1 2 3 4 |
function factorialize(num) { return num; } |
Тесты:
factorialize(5)
120
factorialize(10)
3628800
factorialize(20)
2432902008176640000
factorialize(0)
1
3. Проверить, является ли данная строка палиндромом. Под палиндромом будем понимать слово или предложение, которые произносятся одинаково слева направо и справа налево без учета знаков препинания, регистра и пробельных символов.
1 2 3 4 |
function palindrome(str) { return true; } |
Тесты:
palindrome("eye")
true
palindrome("race car")
true
palindrome("not a palindrome")
false
palindrome("A man, a plan, a canal. Panama")
true
palindrome("never odd or even")
true
palindrome("nope")
false
palindrome("almostomla")
false
palindrome("My age is 0, 0 si ega ym.")
true
palindrome("1 eye for of 1 eye.")
false
palindrome("0_0 (: /-\ :) 0-0")
true
4. Найти самое длинное слово в предложении. Результатом работы функции должна быть длина такого слова.
1 2 3 4 |
function findLongestWord(str) { return str.length; } |
Тесты:
findLongestWord("The quick brown fox jumped over the lazy dog")
6
findLongestWord("May the force be with you")
5
findLongestWord("Google do a barrel roll")
6
findLongestWord("What is the average airspeed velocity of an unladen swallow")
8
findLongestWord("What if we try a super-long word such as otorhinolaryngology")
19
5. Преобразовать строку так, чтобы все буквы были в нижнем регистре за исключением первой буквы каждого слова.
1 2 3 4 |
function factorialize(num) { return num; } |
Тесты:
titleCase("I'm a little tea pot")
I'm A Little Tea Pot
titleCase("sHoRt AnD sToUt")
Short And Stout
titleCase("HERE IS MY HANDLE HERE IS MY SPOUT")
Here Is My Handle Here Is My Spout
6. Найти массив из наибольших чисел каждого из подмассивов переданного массива.
1 2 3 4 |
function largestOfFour(arr) { return arr; } |
Тесты:
largestOfFour([[13, 27, 18, 26], [4, 5, 1, 3], [32, 35, 37, 39], [1000, 1001, 857, 1]])
[27,5,39,1001]
largestOfFour([[4, 9, 1, 3], [13, 35, 18, 26], [32, 35, 97, 39], [1000000, 1001, 857, 1]])
[9, 35, 97, 1000000]
7. Обрежьте данную строку str, если ее длина превосходит данное число num. Добавьте в конец обрезанной строки троеточие "...", если num более 3. Заметим, что троеточие должно учитываться при проверке длины строки str.
1 2 3 4 |
function truncate(str, num) { return str; } |
Тесты:
truncate("A-tisket a-tasket A green and yellow basket", 11)
"A-tisket..."
truncate("Peter Piper picked a peck of pickled peppers", 14)
"Peter Piper..."
truncate("A-tisket a-tasket A green and yellow basket", "A-tisket a-tasket A green and yellow basket".length)
"A-tisket a-tasket A green and yellow basket"
truncate("A-tisket a-tasket A green and yellow basket", "A-tisket a-tasket A green and yellow basket".length + 2)
"A-tisket a-tasket A green and yellow basket"
truncate("A-", 1)
"A..."
truncate("Absolutely Longer", 2)
"Ab..."