Базовое решение проблем в JavaScript
Самый большой элемент массива:
Найти наибольшее значение массива очень просто. Сначала объявите переменную max и инициализируйте ее самым безопасным минимальным значением, потому что, если вы установите начальное значение max = 0, вы не получите правильное значение в случае всех отрицательных значений. после инициализации переменной max просто просмотрите весь массив и проверьте, является ли текущий элемент массива больше или меньше, чем max. Это оно.
const arr = [5,10,2,3,41,50,1] let max = Number.MIN_SAFE_INTEGER for (let i = 0; i < arr.length; i++) { if (arr[i] > max) { max = arr[i] } } console.log(max);
Нахождение четного нечетного:
Определение четного или нечетного числа — это самая основная задача, которую вы должны решить сегодня. Для этой задачи вам просто нужно использовать условный оператор.
function evenOdd(num){ if (num %2 ==0) { return "Even" } return "Odd" } evenOdd(10);
Сумма всех чисел массива:
Чтобы найти сумму всех чисел массива, вам просто нужно пройти весь массив и добавить каждый элемент с суммой
const arr = [5, 10, 2, 3, 41, 50, 1] let sum = 0; for (let i = 0; i < arr.length; i++) { sum += arr[i] } console.log(sum);
Простое число:
простое число — это любое натуральное число, которое больше 1 и не может делиться ни на какое другое число, кроме самого себя. мы можем легко решить это, написав следующую функцию
function isPrime(number) { const limit = Math.ceil(Math.sqrt(number)) for (let i = 2; i < limit; i++) { if (number % i == 0) { return false; } } return number > 1 } isPrime(5);
Нахождение наибольшей строки массива:
Чтобы найти самую большую строку из массива, вам просто нужно выполнить 3 шага.
1. Запустите цикл и просмотрите весь массив
2. найти длину каждой строки массива
3. сравните длину
const LargestString = items => { let largest = ''; items.forEach(item => { if (item.length > largest.length) { largest = item; } }); return largest; } const arr = ["Java", "Python", "JavaScript", "C#"] LargestString(arr);
Удалить повторяющийся элемент из массива:
Для удаления повторяющихся значений из массива существует множество способов. вы можете использовать метод indexOf() и проверить возвращаемое значение. Вы можете использовать set(), filter() и т.д.
Но все эти способы используют встроенный метод, который плохо влияет на производительность. вы можете использовать это решение, оно даст линейную временную сложность
const arr = [5, 10, 2, 50, "r", 41, "r", 2, 50, 1] let checking = {} let newArray = [] for (let i = 0; i < arr.length; i++) { let item = arr[i] if (checking[item] !== -1) { checking[item] = -1 newArray.push(item) } } console.log(newArray);
Количество слов в строке:
Найти общее количество слов в заданной строке немного сложно. вы должны использовать регулярное выражение. Поскольку ваша строка может иметь пробел в начале или в конце, поэтому вам нужно устранить эти пробелы, а также ваша строка может иметь несколько пробелов между ними, поэтому также необходимо преобразовать их в один пробел. тогда вы просто разделите их по пробелам
let str = " hello, my name is sikder rayhan kabir " str = str.replace(/(^\s*) || (\s*?)/gi, "") str = str.replace(/[ ]{2,}/gi, " ") str = str.replace(/\n /, "\n") const words = str.split(" ") console.log(words.length);
Перевернуть строку:
Перевернуть строку в JavaScript очень просто. просто напишите цикл for, который начнет формировать последний индекс строки по направлению к первому индексу и сохранит их в новой строке
const str = "Hello, i love javaScript" const len = str.length let revstr = "" for (let i = len - 1; i >= 0; i--) { revstr += str[i] } console.log(revstr);
Вычислить факториал числа:
Вы можете найти факториал числа разными способами. вы можете использовать цикл for, цикл while, но для этого примера я буду использовать рекурсию. мы знаем, что мы можем найти факториал, используя эту формулу = n * (n - 1)… * 1
function Factorial(number) { if (number === 0 || number === 1) { return 1 } let total = number * Factorial(number - 1) return total } const a = Factorial(4) console.log(a);
ряд Фибоначчи:
мы можем найти ряды Фибоначчи, используя циклы, но я буду использовать рекурсию, потому что рекурсия делает временную сложность линейной.
function FindFibonacci(limit) { let fib = "0 1 " function Fibonacci(first, second) { let sum = first + second; if (sum >= limit) { return; } fib += `${sum} ` Fibonacci(second, sum) } Fibonacci(0, 1) return fib } FindFibonacci(50);
Спасибо, что были со мной до сих пор. Это все на сегодня. просто попрактикуйтесь во всех задачах и попытайтесь решить их разными способами.