Skip to content

Commit 5dce857

Browse files
authored
Merge pull request #4 from EasyCode-JavaScriptReact-v1/homework_3
Homework 3
2 parents 15df81f + d28324e commit 5dce857

File tree

4 files changed

+181
-4
lines changed

4 files changed

+181
-4
lines changed

js-core/classworks/classwork-1/index.html

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,11 @@
22
<html lang="en">
33
<head>
44
<meta charset="UTF-8">
5-
<title>Class work 1</title>
5+
<title></title>
66
</head>
77
<body>
8-
<h1>YES !</h1>
9-
<script src="src/main.js"></script>
8+
9+
10+
<script src="main.js"></script>
1011
</body>
1112
</html>

js-core/homeworks/homework-2/src/main.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ let team = `команда`;
99
let howMuch = 'Сколько';
1010
let sentence = 'нужно программистов чтобы сделать проект ?';
1111

12-
let task1 = `${howMuch} ${sentence} ${numbers[1]}, ${numbers[0]}, ${team}`
12+
let task1 = `${howMuch} ${sentence} ${numbers[1]}, ${numbers[0]}, ${team}`
1313

1414
console.log(task1);
1515

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
<!DOCTYPE html>
2+
<html lang="ru">
3+
<head>
4+
<meta charset="UTF-8">
5+
<title>test page</title>
6+
</head>
7+
<body>
8+
<script src="src/main.js"></script>
9+
</body>
10+
</html>
Lines changed: 166 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,166 @@
1+
/*
2+
Напишите функцию которая будет возвращать объект
3+
с свойством name, а значением будет первый аргумент функции
4+
*/
5+
6+
function returnObject(value) {
7+
let obj = {
8+
name: value
9+
}
10+
11+
return obj
12+
}
13+
14+
var someObject = returnObject('Serg');
15+
console.log(someObject);
16+
17+
/*
18+
Функция будет принимать 1 аргумент - ОБЪЕКТ у которого
19+
будет свойство name
20+
и возвращать новый объект изменяя свойство name
21+
в большой регистр
22+
*/
23+
24+
function toUpperCase(obj) {
25+
let newObj = {
26+
name: obj.name.toUpperCase()
27+
}
28+
29+
30+
return newObj
31+
}
32+
const objectWithName = { name: 'privet kak dela' };
33+
console.log(objectWithName);
34+
console.log(toUpperCase(objectWithName));
35+
36+
/*
37+
1. Напишите функцию которая принимает в
38+
качестве аргумента массив и элемент массива
39+
и добавляет элемент в конец массива
40+
*/
41+
42+
let arr = [];
43+
arr[0] = 'privet';
44+
arr[1] = 'poka';
45+
arr[2] = 'zdrastvuite';
46+
47+
function addToArray(arrParam, newElem) {
48+
arr[arr.length] = newElem;
49+
return arr;
50+
}
51+
52+
addToArray(arr, 34);
53+
addToArray(arr, 55);
54+
console.log(arr);
55+
56+
/*
57+
2. Напишите функцию которая получает 3 параметра
58+
и возвращает объект типа:
59+
{
60+
argument1: param1,
61+
argument2: param2,
62+
argument3: param3,
63+
}
64+
*/
65+
66+
function simpleObjectGenerator(one, two, three) {
67+
let obj = {
68+
name: one,
69+
url: two,
70+
number: three
71+
}
72+
return obj
73+
}
74+
75+
console.log(simpleObjectGenerator('protocol', { url: '22' }, 8000));
76+
/* {
77+
argument1:'protocol',
78+
argument2:{url:'22'},
79+
argument3:8000
80+
}*/
81+
82+
// var userNames = [{ name: 'Egor' }, { name: 'Katya' }, { name: 'Vera' }];
83+
84+
// console.log(simpleObjectGenerator(77, userNames, 'privet kak dela chto novogo'.toUpperCase()));
85+
/* {
86+
argument1:'77',
87+
argument2:[{ name: 'Egor' }, { name: 'Katya' }, { name: 'Vera' }],
88+
argument3:PRIVET KAK DELA CHTO NOVOGO
89+
}*/
90+
91+
///////////////////////////////////////////////
92+
/*
93+
3. Напишите функцию которая принимает 3 аргумента,
94+
третий аргумент - это объект.
95+
Функция создает новый объект и добавляет ключ
96+
это первый аргумент, а значение - второй аргумент
97+
Проверяет если есть свойство name в переданном объекте,
98+
тогда добавляет данное свойство и возвращает новый объект
99+
*/
100+
var myName = { name: 'Serg' };
101+
102+
function addNameToUser(newKey, newValue, userName) {
103+
let obj = {};
104+
obj[newKey] = newValue;
105+
if(userName.name){
106+
obj.name = userName
107+
}
108+
return obj
109+
}
110+
111+
console.log(addNameToUser('family', '%Lustenko%', myName));
112+
console.log(addNameToUser('name', 'privet Pasha', {}));
113+
/* {name:'Oleg', family:'%Lustenko%'} */
114+
115+
console.log(myName);
116+
/* {name:'Oleg'} */
117+
118+
/////////////////////////////////
119+
120+
/*
121+
-> @@ SUPER !
122+
Напишите функцию, которая будет
123+
возвращать 'Fizz' если передаваемый параметр кратен 3,
124+
'Buzz', если передаваемый параметр кратен 5,
125+
'FizzBuzz' - если параметер кратен 3 и 5
126+
Если передаваемое число не кратно 3 или 5, то вернуть указанный параметр
127+
*/
128+
129+
function fizzBuzz(num) {
130+
let someRes;
131+
if(num % 3 == 0 && num % 5 == 0){
132+
someRes = 'FizzBuzz';
133+
} else if (num % 3 == 0){
134+
someRes = 'Fizz';
135+
} else if(num % 5 == 0){
136+
someRes = 'Buzz';
137+
} else{
138+
someRes = num;
139+
}
140+
console.log(someRes)
141+
return someRes
142+
}
143+
144+
fizzBuzz(1); // 1
145+
fizzBuzz(2); // 2
146+
fizzBuzz(3); // 'Fizz'
147+
fizzBuzz(5); // 'Buzz'
148+
// ...
149+
fizzBuzz(15); // 'FizzBuzz'
150+
fizzBuzz(21); // 'Fizz'
151+
152+
/* -> @@ SUPER 2
153+
Напишите функцию, которая будет принимать 4 аргумента,
154+
последний всегда функция.
155+
Добавьте первые 3 аргумента в массив и вызовите переданную функцию с данным массивом
156+
*/
157+
158+
function super2(arg1, arg2, arg3, callback) {
159+
let arr = [arg1, arg2 ,arg3];
160+
callback(arr);
161+
}
162+
let callArr = function(callback){
163+
console.log(callback);
164+
}
165+
166+
super2('my', 'name', 'Serg', callArr);

0 commit comments

Comments
 (0)