Forwarded from Dev House Jun Front
Хэй, тут есть полезность! Мы на днях пообщались с ребятами из CodeReview и решили запартнериться – они как и мы – за качественный движ и полезность.
Давай ближе к делу, зачем прелюдии. И так, ребята называются, собственно, CodeReview – ссылочка на них тут (можешь даже подписаться). Называются они так не ради красивого словца, а потому что занимаются код-ревью народа, проверкой их навыков (больше по технической части) и в целом готовят к собеседованиям.
Ты хочешь на джуна – ТЕБЕ К НИМ
Ты хочешь на мидла – ТЕБЕ К НИМ
Ты хочешь на сеньора – ТЕБЕ К НИМ
Разложат тебе по полочкам все твои навыки, скажут чего не хватает, ну и можно будем прокачать скиллы либо у них (если по мелочи), либо у нас (если по крупному).
Ну и партнерство же должно быть не только в виде фраз. Поэтому вот вам промокод, если пойдете к ним на что то платное – DHCR – 10% скидончика.
P.S. Скоро сделаем парочку вебинаров с ребятами, ждите-с
Давай ближе к делу, зачем прелюдии. И так, ребята называются, собственно, CodeReview – ссылочка на них тут (можешь даже подписаться). Называются они так не ради красивого словца, а потому что занимаются код-ревью народа, проверкой их навыков (больше по технической части) и в целом готовят к собеседованиям.
Ты хочешь на джуна – ТЕБЕ К НИМ
Ты хочешь на мидла – ТЕБЕ К НИМ
Ты хочешь на сеньора – ТЕБЕ К НИМ
Разложат тебе по полочкам все твои навыки, скажут чего не хватает, ну и можно будем прокачать скиллы либо у них (если по мелочи), либо у нас (если по крупному).
Ну и партнерство же должно быть не только в виде фраз. Поэтому вот вам промокод, если пойдете к ним на что то платное – DHCR – 10% скидончика.
P.S. Скоро сделаем парочку вебинаров с ребятами, ждите-с
Telegram
Макс из < codereview />
Помогу найти первую работу джуном - https://yourcodereview.com/
Как искать работу в 2024 году - https://yangx.top/KotReviewBot
Написать мне в лс: @maxim_primak
№ 4988474654
Как искать работу в 2024 году - https://yangx.top/KotReviewBot
Написать мне в лс: @maxim_primak
№ 4988474654
Привет! Давай решим задачу:
Напишите программу на JavaScript, чтобы вычислить сумму массива целых чисел.
Решение
var array_sum = function(my_array) {
if (my_array.length === 1) {
return my_array[0];
}
else {
return my_array.pop() + array_sum(my_array);
}
};
console.log(array_sum([1,2,3,4,5,6]));
Ответ: 21
Напишите программу на JavaScript, чтобы вычислить сумму массива целых чисел.
var array_sum = function(my_array) {
if (my_array.length === 1) {
return my_array[0];
}
else {
return my_array.pop() + array_sum(my_array);
}
};
console.log(array_sum([1,2,3,4,5,6]));
Ответ: 21
Хай! Напишите программу на JavaScript, чтобы проверить, является ли число четным или нет.
Решение
function is_even_recursion(number)
{
if (number < 0)
{
number = Math.abs(number);
}
if (number===0)
{
return true;
}
if (number===1)
{
return false;
}
else
{
number = number - 2;
return is_even_recursion(number);
}
}
console.log(is_even_recursion(234)); //true
console.log(is_even_recursion(-45)); // false
console.log(is_even_recursion(-45)); // false
function is_even_recursion(number)
{
if (number < 0)
{
number = Math.abs(number);
}
if (number===0)
{
return true;
}
if (number===1)
{
return false;
}
else
{
number = number - 2;
return is_even_recursion(number);
}
}
console.log(is_even_recursion(234)); //true
console.log(is_even_recursion(-45)); // false
console.log(is_even_recursion(-45)); // false
Привет! Твоя задача на сегодня:
Написать программу, которая по паролю определяет уровень доступа сотрудника к секретной информации в базе данных. Доступ к базе данных имеют только 6 сотрудников, разбитых на три группы по уровням достепа. Они имеют следующие пароли: 9583, 1747 – доступны модули баз А, В и С; 3331, 7922 - доступны модули баз В и С; 9455, 8997 – доступен модуль базы С.
Решение:
<script language="Javascript">
var a=prompt("Введите пароль","")
if ((a=="9583") || (a=="1747"))
{ alert("Вам доступны базы A,B,C")}
else {if((a=="3331") || (a=="7922"))
{alert("Вам доступны базы B,C")}
else {if((a=="9455") || (a=="8997"))
{alert("Вам доступна база C")}
else {if((a!="3331") || (a!="7922") || (a!="9455") || (a!="8997") || (a!="9583") || (a!="1747"))
{alert("Вам не доступны базы")}
}
}
}
</script>
Написать программу, которая по паролю определяет уровень доступа сотрудника к секретной информации в базе данных. Доступ к базе данных имеют только 6 сотрудников, разбитых на три группы по уровням достепа. Они имеют следующие пароли: 9583, 1747 – доступны модули баз А, В и С; 3331, 7922 - доступны модули баз В и С; 9455, 8997 – доступен модуль базы С.
Решение:
var a=prompt("Введите пароль","")
if ((a=="9583") || (a=="1747"))
{ alert("Вам доступны базы A,B,C")}
else {if((a=="3331") || (a=="7922"))
{alert("Вам доступны базы B,C")}
else {if((a=="9455") || (a=="8997"))
{alert("Вам доступна база C")}
else {if((a!="3331") || (a!="7922") || (a!="9455") || (a!="8997") || (a!="9583") || (a!="1747"))
{alert("Вам не доступны базы")}
}
}
}
</script>
Привет! Сегодня задача:
Известен рост трёх человек:
А - 159
B - 130
С - 214
Определить, одинаков ли их рост.
Решение:
var a=parseInt(prompt("Введите рост первого человека",""))
var b=parseInt(prompt("Введите рост второго человека",""))
var c=parseInt(prompt("Введите рост третьего человека",""))
if ((a=b) && (b==c) && (a==c))
alert("Рост этих людей одинаков")
else {alert("Рост этих людей различен")}
Известен рост трёх человек:
А - 159
B - 130
С - 214
Определить, одинаков ли их рост.
Решение:
var b=parseInt(prompt("Введите рост второго человека",""))
var c=parseInt(prompt("Введите рост третьего человека",""))
if ((a=b) && (b==c) && (a==c))
alert("Рост этих людей одинаков")
else {alert("Рост этих людей различен")}
Привет! На сегодня твоя задача:
Дан объект obj с ключами 'Минск', 'Москва', 'Киев' с элементами 'Беларусь',
'Россия', 'Украина'. С помощью цикла for-in выведите на экран строки такого
формата: 'Минск - это Беларусь.'.
Решение: задача не представляет сложности если уметь работать с циклом for-in.
Давайте решать задачу поэтапно. Для начала выведем на экран все ключи объекта
(это названия городов):
var obj = {
'Минск': 'Беларусь',
'Москва': 'Россия',
'Киев': 'Украина'
};
for (var key in obj) {
alert(key);
}
А теперь выведем все значения объекта (это страны):
var obj = {
'Минск': 'Беларусь',
'Москва': 'Россия',
'Киев': 'Украина'
};
for (var key in obj) {
alert(obj[key]);
}
Ну, а теперь сформируем строки нужного нам формата:
var obj = {
'Минск': 'Беларусь',
'Москва': 'Россия',
'Киев': 'Украина'
};
for (var key in obj) {
alert(key + ' - это ' + obj[key] + '.');
}
Дан объект obj с ключами 'Минск', 'Москва', 'Киев' с элементами 'Беларусь',
'Россия', 'Украина'. С помощью цикла for-in выведите на экран строки такого
формата: 'Минск - это Беларусь.'.
Давайте решать задачу поэтапно. Для начала выведем на экран все ключи объекта
(это названия городов):
var obj = {
'Минск': 'Беларусь',
'Москва': 'Россия',
'Киев': 'Украина'
};
for (var key in obj) {
alert(key);
}
А теперь выведем все значения объекта (это страны):
var obj = {
'Минск': 'Беларусь',
'Москва': 'Россия',
'Киев': 'Украина'
};
for (var key in obj) {
alert(obj[key]);
}
Ну, а теперь сформируем строки нужного нам формата:
var obj = {
'Минск': 'Беларусь',
'Москва': 'Россия',
'Киев': 'Украина'
};
for (var key in obj) {
alert(key + ' - это ' + obj[key] + '.');
}
Привет!
Напиши функцию map(fn, array), которая принимает на вход функцию и массив, и обрабатывает каждый элемент массива этой функцией, возвращая новый массив.
Пример:
function square(x) { return x * x; } // возведение в квадрат
console.log(map(square, [1, 2, 3, 4])); // [1, 4, 9, 16]
console.log(map(square, [ ])); // [ ]
Напиши функцию map(fn, array), которая принимает на вход функцию и массив, и обрабатывает каждый элемент массива этой функцией, возвращая новый массив.
Пример:
function square(x) { return x * x; } // возведение в квадрат
console.log(map(square, [1, 2, 3, 4])); // [1, 4, 9, 16]
console.log(map(square, [ ])); // [ ]
Привет!
Напиши функцию bind, которая позволяет привязать контекст (значение this) к функции:
Ответ:
window.x = 1;
var ctx = { x: 2 };
function testThis(a) { console.log("x=" + this.x + ", a=" + a); }
console.log(testThis(100)); // x=1, a=100
var boundFunction = bind(testThis, ctx);
console.log(boundFunction(100)); // x=2, a= 100
Напиши функцию bind, которая позволяет привязать контекст (значение this) к функции:
Ответ:
var ctx = { x: 2 };
function testThis(a) { console.log("x=" + this.x + ", a=" + a); }
console.log(testThis(100)); // x=1, a=100
var boundFunction = bind(testThis, ctx);
console.log(boundFunction(100)); // x=2, a= 100
Привет! Примерно через две недели планируем провести прямой эфир с ребятами из CodeRewiev. От вас зависит, какую тему мы выберем.
Темы:
Что нужно знать, что бы пройти на джуна? - 34
👍👍👍👍👍👍👍👍 71%
Что влияет на твою зарплату? - 3
👍👍 6%
Hard или soft? Какие скилы важнее - 4
👍👍 8%
Карьера за 3-5 лет - возможно ли? - 4
👍👍 8%
Горизонтальная миграция - есть ли смысл менять направление разработки? - 3
👍👍 6%
👥 48 человек уже проголосовало.
Темы:
Что нужно знать, что бы пройти на джуна? - 34
👍👍👍👍👍👍👍👍 71%
Что влияет на твою зарплату? - 3
👍👍 6%
Hard или soft? Какие скилы важнее - 4
👍👍 8%
Карьера за 3-5 лет - возможно ли? - 4
👍👍 8%
Горизонтальная миграция - есть ли смысл менять направление разработки? - 3
👍👍 6%
👥 48 человек уже проголосовало.
АААААААААлоха! 28 июня мы с ребятами из CodeReview проведем прямой эфир на одну из тем, которую вы выберете на опросе в посте - https://yangx.top/dh_jun/451
Сможете задать свои вопросы.)
Сможете задать свои вопросы.)
Напиши функцию partial(fn, a1, a2, ....), которая позволяет зафиксировать один или несколько аргументов функции. Пример:
function add(a, b) { return a + b; }
function mult(a, b, c, d) { return a * b * c * d; }
var add5 = partial(add, 5); // Мы получили функцию с 1 аргументом, которая прибавляет к любому числу 5
console.log(add5(2)); // 7
console.log(add5(10)); // 15
console.log(add5(8)); // 13
var mult23 = partial(mult, 2, 3); // мы зафиксировали первые 2 аргумента mult() как 2 и 3
console.log(mult23(4, 5)); // 2*3*4*5 = 120
console.log(mult23(1, 1)); // 2*3*1*1 = 6
function add(a, b) { return a + b; }
function mult(a, b, c, d) { return a * b * c * d; }
var add5 = partial(add, 5); // Мы получили функцию с 1 аргументом, которая прибавляет к любому числу 5
console.log(add5(2)); // 7
console.log(add5(10)); // 15
console.log(add5(8)); // 13
var mult23 = partial(mult, 2, 3); // мы зафиксировали первые 2 аргумента mult() как 2 и 3
console.log(mult23(4, 5)); // 2*3*4*5 = 120
console.log(mult23(1, 1)); // 2*3*1*1 = 6
Напишите программу, которая будет задавать вопросы пользователю и затем выведет ответы на странице. Для решения используйте функцию prompt и цикл for.
Решение
let answers = [];
questions = [
'Как вас зовут?',
'Кто вы по профессии?',
'Где вы работаете?'
];
for(let i = 0; i < questions.length; i++){
answers[i] = prompt(questions[i]);
}
document.write(answers);
Решение
questions = [
'Как вас зовут?',
'Кто вы по профессии?',
'Где вы работаете?'
];
for(let i = 0; i < questions.length; i++){
answers[i] = prompt(questions[i]);
}
document.write(answers);
Напишите функцию JavaScript для преобразования суммы в монеты. Перейти к редактору
Пример функции : количество токоинов (46, [25, 10, 5, 2, 1])
Здесь 46 сумма. и 25, 10, 5, 2, 1 - монеты.
Выход : 25, 10, 10, 1
Решение:
function amountTocoins(amount, coins)
{
if (amount === 0)
{
return [];
}
else
{
if (amount >= coins[0])
{
left = (amount - coins[0]);
return [coins[0]].concat( amountTocoins(left, coins) );
}
else
{
coins.shift();
return amountTocoins(amount, coins);
}
}
}
console.log(amountTocoins(46, [25, 10, 5, 2,1]));
Пример функции : количество токоинов (46, [25, 10, 5, 2, 1])
Здесь 46 сумма. и 25, 10, 5, 2, 1 - монеты.
Выход : 25, 10, 10, 1
Решение:
{
if (amount === 0)
{
return [];
}
else
{
if (amount >= coins[0])
{
left = (amount - coins[0]);
return [coins[0]].concat( amountTocoins(left, coins) );
}
else
{
coins.shift();
return amountTocoins(amount, coins);
}
}
}
console.log(amountTocoins(46, [25, 10, 5, 2,1]));
Хай! Твоя задача на сегодня:
Написать скрипт, который считает количество дней жизни сайта
Решение
<script type="text/javascript">
function lifeSite() {
var start = new Date('March 27, 2010'); // Дата создания сайта
var end = new Date();
var life = Math.round((end.getTime() - start.getTime()) / (1000 * 60 * 60 * 24));
var suffix = new Array("день", "дня", "дней");
var keys = [2, 0, 1, 1, 1, 2];
var mod = life % 100;
var suffix_key = mod > 4 && mod < 20 ? 2 : keys[Math.min(mod%10, 5)];
document.getElementById("life_site").innerHTML = life + " " + suffix[suffix_key];
}
</script>
Написать скрипт, который считает количество дней жизни сайта
Решение
function lifeSite() {
var start = new Date('March 27, 2010'); // Дата создания сайта
var end = new Date();
var life = Math.round((end.getTime() - start.getTime()) / (1000 * 60 * 60 * 24));
var suffix = new Array("день", "дня", "дней");
var keys = [2, 0, 1, 1, 1, 2];
var mod = life % 100;
var suffix_key = mod > 4 && mod < 20 ? 2 : keys[Math.min(mod%10, 5)];
document.getElementById("life_site").innerHTML = life + " " + suffix[suffix_key];
}
</script>
Хай! Напишите программу на JavaScript для создания новой строки из заданной строки, удалив первый и последний символы строки, если первый или последний символ - «P». Вернуть исходную строку, если условие не выполняется.
Решение:
function nop(str) {
let start_pos = 0;
let end_pos = str.length;
if (str.length > 0 && str.charAt(0) =='P')
{
start_pos = 1;
}
if (str.length > 1 && str.charAt(str.length - 1) =='P')
{
end_pos--;
}
return str.substring(start_pos, end_pos);
}
console.log(nop("PythonP"));
console.log(nop("Python"));
console.log(nop("JavaScript"));
Решение:
let start_pos = 0;
let end_pos = str.length;
if (str.length > 0 && str.charAt(0) =='P')
{
start_pos = 1;
}
if (str.length > 1 && str.charAt(str.length - 1) =='P')
{
end_pos--;
}
return str.substring(start_pos, end_pos);
}
console.log(nop("PythonP"));
console.log(nop("Python"));
console.log(nop("JavaScript"));
Напишите программу на JavaScript, чтобы вычислить сумму массива целых чисел.
Пример: var array = [1, 2, 3, 4, 5, 6]
Ожидаемый результат: 21
Решение:
var array_sum = function(my_array) {
if (my_array.length === 1) {
return my_array[0];
}
else {
return my_array.pop() + array_sum(my_array);
}
};
console.log(array_sum([1,2,3,4,5,6]));
Пример: var array = [1, 2, 3, 4, 5, 6]
Ожидаемый результат: 21
Решение:
if (my_array.length === 1) {
return my_array[0];
}
else {
return my_array.pop() + array_sum(my_array);
}
};
console.log(array_sum([1,2,3,4,5,6]));
Хай! Напишите программу, которая будет задавать вопросы пользователю и затем выведет ответы на странице. Для решения используйте функцию prompt и цикл for.
Решение:
let answers = [];
questions = [
'Как вас зовут?',
'Кто вы по профессии?',
'Где вы работаете?'
];
for(let i = 0; i < questions.length; i++){
answers[i] = prompt(questions[i]);
}
document.write(answers);
Решение:
questions = [
'Как вас зовут?',
'Кто вы по профессии?',
'Где вы работаете?'
];
for(let i = 0; i < questions.length; i++){
answers[i] = prompt(questions[i]);
}
document.write(answers);
Привет! Сегодня решим задачу: Известен рост трёх человек. Определить, одинаков ли их рост.
Решение:
<html>
<head>
<script language="Javascript">
var a=parseInt(prompt("Введите рост первого человека",""))
var b=parseInt(prompt("Введите рост второго человека",""))
var c=parseInt(prompt("Введите рост третьего человека",""))
if ((a=b) && (b==c) && (a==c))
alert("Рост этих людей одинаков")
else {alert("Рост этих людей различен")}
</script>
</head>
</html>
Решение:
<head>
<script language="Javascript">
var a=parseInt(prompt("Введите рост первого человека",""))
var b=parseInt(prompt("Введите рост второго человека",""))
var c=parseInt(prompt("Введите рост третьего человека",""))
if ((a=b) && (b==c) && (a==c))
alert("Рост этих людей одинаков")
else {alert("Рост этих людей различен")}
</script>
</head>
</html>