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