Готовый Код | Frontend
884 subscribers
470 photos
7 videos
240 links
Здесь ты найдешь готовый код для фронтенд разработки

По вопросам : @sul_furas
加入频道
Хай! Популярная задача на собеседование FizzBuzz

Постановка:
Требуется написать функцию, выводящую в консоль числа от 1 до n, где n — это целое число, которая функция принимает в качестве параметра, с такими условиями:

вывод fizz вместо чисел, кратных 3;

вывод buzz вместо чисел, кратных 5;

вывод fizzbuzz вместо чисел, кратных как 3, так и 5.


Результат:
// 1
// 2
// fizz
// 4
// buzz

P.s Пять смайлов на посте и скидываем решение)
Готовый Код | Frontend
Хай! Популярная задача на собеседование FizzBuzz Постановка: Требуется написать функцию, выводящую в консоль числа от 1 до n, где n — это целое число, которая функция принимает в качестве параметра, с такими условиями: вывод fizz вместо чисел, кратных 3;…
Привет) Сегодня у нас будет разбор
Решение
Главное здесь — способ поиска кратных чисел с использованием js. Его можно сделать при помощи оператора модуля или же остатка — %, который позволяет показать остаток при делении двух чисел. Если остаток 0, это означает, что первое число кратно второму.

12 % 5 // 2 -> 12 is not a multiple of 5
12 % 3 // 0 -> 12 is multiple of 3

Так, если разделить 12 на 5, получаем 2 с остатком 2. Если же разделить 12 на 3, то получаем 4 с остатком 0. В первом случае 12 не кратно 5, во втором — 12 кратно 3.
const fizzBuzz = num => {
for(let i = 1; i <= num; i++) {
// check if the number is a multiple of 3 and 5
if(i % 3 === 0 && i % 5 === 0) {
console.log('fizzbuzz')
} // check if the number is a multiple of 3
else if(i % 3 === 0) {
console.log('fizz')
} // check if the number is a multiple of 5
else if(i % 5 === 0) {
console.log('buzz')
} else {
console.log(i)
}
}
}
P.s Если справились - в комментариях пишем "+"
Хай! Сегодня у нас задание Палиндром)

Что такое Палиндром?
Палиндром — слово, предложение или последовательность символов, которая абсолютно одинаково читается как в привычном направлении, так и в обратном. К примеру, “Anna” — это палиндром, а “table” и “John” — нет.

Постановка задачи:
Дана строка; нужно написать функцию, которая позволяет вернуть значение true, если строка является палиндромом, и false — если нет. При этом нужно учитывать пробелы и знаки препинания.

palindrome('racecar') === true
palindrome('table') === false

P.s Десять смайлов на посте и скидываем решение)
Всем привет! Сегодня задача на вычисление факториала числа

Напишите программу на JavaScript для вычисления факториала числа.

В математике факториал неотрицательного целого числа n, обозначенного через n !, является произведением всех натуральных чисел, меньших или равных n. Например, 5! = 5 х 4 х 3 х 2 х 1 = 120

Решение
function factorial(x)
{
if (x === 0)
{
return 1;
}
return x * factorial(x-1);
}
console.log(factorial(5));
Ответ: 120
Хай! Сегодня у нас задача Фибоначчи
Классическая задача, которую можно встретить на собеседованиях самого разного уровня. Стоит напомнить, что последовательность Фибоначчи — это ряд чисел, где каждое последующее является суммой двух предыдущих. Так, первые десять чисел выглядят следующим образом: 0, 1, 1, 2, 3, 5, 8, 13, 21, 34.

Постановка
Нужно написать функцию, которая возвращает n-ную запись в определенной последовательности, причем n — число, которое передается в качестве аргумента функции.

fibonacci(3) // --> 2

Эта задача включает прохождение по циклу такое количество раз, которое указано в аргументе, с возвратом значения на соответствующей позиции. Этот способ постановки задачи требует использования циклов. Если вместо этого вы используете рекурсию, это может понравиться интервьюеру и дать вам несколько дополнительных очков.

P.s Пять смайлов и скидываем решение)
Доброе всем утро! Давайте решим ещё одну задачку)
Задача:
Есть ферма животных, у всех животных есть имена и возраст. Животные бывают разных типов: Кошки, Собаки, Коровы. У каждого животного могут быть дети. Если животное является родителем этих детей, в свою очередь глубина семейного древа может достигать N либо 0.

Опишите структуры данных для фермы животных и напишите функцию, которая делает подсчёт всех возрастов животных и выводит общий возраст для всей фермы.

P.s Десять смайлов и скидываем решение)
Готовый Код | Frontend
Доброе всем утро! Давайте решим ещё одну задачку) Задача: Есть ферма животных, у всех животных есть имена и возраст. Животные бывают разных типов: Кошки, Собаки, Коровы. У каждого животного могут быть дети. Если животное является родителем этих детей, в свою…
Решение:
// Родительский класс для всех животных
class Animal {
constructor(name, age, childs = null) {
this.name = name;
this.age = age;
this.childs = childs;
}
}

// Класс Cat - потомок класса Animal
// Имеет те же поля, что и Animal
class Cat extends Animal {
constructor(name, age, childs = null) {
super(name, age, childs);
}
}

// Класс Dog - потомок класса Animal
// Имеет те же поля, что и Animal
class Dog extends Animal {
constructor(name, age, childs = null) {
super(name, age, childs);
}
}

// Класс Cow - потомок класса Animal
// Имеет те же поля, что и Animal
class Cow extends Animal {
constructor(name, age, childs = null) {
super(name, age, childs);
}
}

// Рекурсивная функция для подсчета age
// Обходит все дочерние элементы
function getAnimalsAge(animals) {
let output = 0;

if (animals.length > 0) {
// Использование функции reduce для получения общего age
// https://learn.javascript.ru/array-iteration
output += animals.reduce((acc, current) => {
// Сумма age всех childs
let count = 0;
// Если childs пустой или его нет, тогда нет смысла пробегать по ним
if (current.childs && current.childs.length > 0) {
// Применение рекурсии
count += getAnimalsAge(current.childs);
}

// Возвращаем сумму аккумулятора, текущего животного, сумму age всех childs
return acc + current.age + count;
}, 0);
}

return output;
}

// Функция для получения определённого количества животных
function generateAnimals(type, count) {
let output = [];

for (let i = 0; i <= count; i++) {
let parameter = {
name: ${type} ${i},
age: i,
childs: []
};

let item = null;

switch (type) {
case "Cat":
item = new Cat(parameter.name, parameter.age);
break;
case "Dog":
item = new Dog(parameter.name, parameter.age);
break;
case "Cow":
item = new Cow(parameter.name, parameter.age);
break;
}

if (item) {
output.push(item);
}
}

return output;
}

// Добавление childs ко всем переданным животным
function addChildsTo(animals, count, type) {
animals.forEach(animal => {
if (!animal.childs) {
animal.childs = [];
}
// Обратите внимание, что массив - ссылка, поэтому изменяя здесь его поля
// мы меняем их глобально
animal.childs = generateAnimals(type, count);
});
}

let cats = generateAnimals("Cat", 5);
addChildsTo(cats, 10, "Cat");

let dogs = generateAnimals("Dog", 3);
addChildsTo(dogs, 3, "Dog");

let cows = generateAnimals("Cow", 7);
addChildsTo(cows, 1, "Dog");

// Использование оператора Spread (ES6)
// https://developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Operators/Spread_syntax
let animals = [...cats, ...dogs, ...cows];

console.log(getAnimalsAge(animals)) // 411
Какой минимальный набор языков для веб разработки?
Anonymous Poll
87%
HTML CSS JS
12%
HTML CSS JS PHP PYTHON
0%
JAVA PHP JS
1%
JS GO PYTHON C++
Привет сегодня задача Палиндром

Палиндром — слово, предложение или последовательность символов, которая абсолютно одинаково читается как в привычном направлении, так и в обратном. К примеру, “Anna” — это палиндром, а “table” и “John” — нет.

Постановка

Дана строка; нужно написать функцию, которая позволяет вернуть значение true, если строка является палиндромом, и false — если нет. При этом нужно учитывать пробелы и знаки препинания.

palindrome('racecar') === true
palindrome('table') === false

P,s Десять смайлов и скидываем решение)
Привет! Сегодня у нас будет задача "Фибоначчи"

Классическая задача, которую можно встретить на собеседованиях самого разного уровня. Стоит напомнить, что последовательность Фибоначчи — это ряд чисел, где каждое последующее является суммой двух предыдущих. Так, первые десять чисел выглядят следующим образом: 0, 1, 1, 2, 3, 5, 8, 13, 21, 34.

Постановка

Нужно написать функцию, которая возвращает n-ную запись в определенной последовательности, причем n — число, которое передается в качестве аргумента функции.

fibonacci(3) // --> 2

Эта задача включает прохождение по циклу такое количество раз, которое указано в аргументе, с возвратом значения на соответствующей позиции. Этот способ постановки задачи требует использования циклов. Если вместо этого вы используете рекурсию, это может понравиться интервьюеру и дать вам несколько дополнительных очков.

P.s Справился? Скидывай решение в комментариях) Десять смайлов и кидаем решение)
Хай! Снова числа)
Ваша задача на сегодня это написать выражение, находящее только числа, записанные в стиле JavaScript. Оно должно поддерживать возможный минус или плюс перед числом, десятичную точку, и экспоненциальную запись 5e-3 или 1E10 – опять-таки с возможными плюсом или минусом. Также заметьте, что до или после точки не обязательно могут стоять цифры, но при этом число не может состоять из одной точки. То есть, .5 или 5. – допустимые числа, а одна точка сама по себе – нет.
Привет! Пора решить задачу:
Напишите функцию JavaScript для преобразования метки времени Unix во время.
Решение:
function Unix_timestamp(t)
{
var dt = new Date(t*1000);
var hr = dt.getHours();
var m ="0" + dt.getMinutes();
var s ="0" + dt.getSeconds();
return hr+ ':' + m.substr(-2) + ':' + s.substr(-2);
}
console.log(Unix_timestamp(1412743274));

P.S. Наш канал с макетами -https://yangx.top/figma_makets
Хай!
Сегодня мы напишем функцию создания генератора sequence(start, step). Она при вызове возвращает другую функцию-генератор, которая при каждом вызове дает число на 1 больше, и так до бесконечности. Начальное число, с которого начинать отсчет, и шаг, задается при создании генератора. Шаг можно не указывать, тогда он будет равен одному. Начальное значение по умолчанию равно 0. Генераторов можно создать сколько угодно

P.s Пять смайлов и скидываем решение)
Хай! Сегодня у нас будет задача:
Напишите две функции, которые будут проходить через массив целых чисел и выводить индекс каждого элемента с задержкой в 3 секунды.

P.s Ожидаем два решения) Ставим десять смайлов и скидываем решение)
Готовый Код | Frontend
Хай! Сегодня у нас будет задача: Напишите две функции, которые будут проходить через массив целых чисел и выводить индекс каждого элемента с задержкой в 3 секунды. P.s Ожидаем два решения) Ставим десять смайлов и скидываем решение)
Хай! Вот и решение задачи)
Первое решение:
const arr = [10, 12, 15, 21];
for (var i = 0; i < arr.length; i++) {
// pass in the variable i so that each function
// has access to the correct index
setTimeout(function(i_local) {
return function() {
console.log('The index of this number is: ' + i_local);
}
}(i), 3000);
}
Второе решение:
const arr = [10, 12, 15, 21];
for (let i = 0; i < arr.length; i++) {
// using the ES6 let syntax, it creates a new binding
// every single time the function is called
// read more here:
http://exploringjs.com/es6/ch_variables.html#sec_let-const-loop-heads
setTimeout(function() {
console.log('The index of this number is: ' + i);
}, 3000);
}
Всем привет! У нас задача: Векторный тип.
Напишите конструктор Vector, представляющий вектор в двумерном пространстве. Он принимает параметры x и y (числа), которые хранятся в одноимённых свойствах.
Дайте прототипу Vector два метода, plus и minus, которые принимают другой вектор в качестве параметра, и возвращают новый вектор, который хранит в x и y сумму или разность двух (один this, второй — аргумент)
Добавьте геттер length в прототип, подсчитывающий длину вектора – расстояние от (0, 0) до (x, y).
Хай! Давай решим задачу!
Напишите функцию lorem(n), которая принимает положительное целое n (от 1 до 445) и при вызове возвращает строку длиной n символов из строки

«Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.»

Например, при вызове lorem(100) функция должна вернуть строку

«Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore »

P.s Десять смайлов и скидываем решение
Привет! Давай сделаем простой скрипт для увеличение картинки, который требуется очень часто.
Обычно картинки на сайте обладают небольшим размером, чтобы не увеличивать их до такого размера, когда это смотрится уже, как минимум, некрасиво. Однако, очень часто пользователи хотят увеличить картинку, и вот для их удобства и был сделан этот простой скрипт.

Условие:
Кликните на любую фотографию. Если кликните ещё раз, то она вернётся в исходное состояние
Доброе утро! Пора заниматься!
Напишите программу на JavaScript для вычисления показателя числа.

Примечание: Показатель числа говорит о том, сколько раз базовое число используется как фактор.
8 2 = 8 x 8 = 64. Здесь 8 - основание, а 2 - показатель степени.

P,s Десять смайлов и скидываем решение
Хай! Неделя была тяжелой, но сегодня воскресенье и пора отдохнуть от рутины. Давай решим легкую задачу сегодня)

Напишифункцию JavaScript, чтобы проверить, являются ли данные типы значений одинаковыми или нет.


P,s Десять смайлов и скидываем решение