1+ /*
2+ TASK 0
3+ Проверьте что строка содержит все символы от "a" до "z"
4+ solution("wyyga") // false
5+ solution("qwertyuioplkjhgfdsazxcvbnm") // true
6+ solution("ejuxggfsts") // false
7+ solution("qpwoeirutyalskdjfhgmznxbcv") // true
8+ solution("qqqqqqqqpwoeirutyallskkdjfhgmmznxbcv") // true
9+ solution("0123456789abcdefghijklmnop") // false
10+ */
11+
12+ const solution = str => {
13+ let tempArr = [ ]
14+ let testABC = / [ a - z ] /
15+ let arrToStr = str . split ( '' )
16+ arrToStr . forEach ( elem => {
17+ let arrElem = testABC . test ( elem )
18+ if ( arrElem === true ) {
19+ tempArr . push ( arrElem )
20+ return tempArr
21+ }
22+ } ) ;
23+ //так как мы знаем что в англ. алфавите 26 букв то
24+ if ( ( arrToStr . length === tempArr . length ) && ( arrToStr . length >= 26 ) ) {
25+ console . log ( true )
26+ // return true
27+ }
28+ else {
29+ console . log ( false )
30+ // return false
31+ }
32+ }
33+ solution ( "wyyga" ) // false
34+ solution ( "qwertyuioplkjhgfdsazxcvbnm" ) // true
35+ solution ( "ejuxggfsts" ) // false
36+ solution ( "qpwoeirutyalskdjfhgmznxbcv" ) // true
37+ solution ( "qqqqqqqqpwoeirutyallskkdjfhgmmznxbcv" ) // true
38+ solution ( "0123456789abcdefghijklmnop" ) // false
39+ /*
40+ 2. Напишите функция которая преобразовывает / открывает
41+ скобки всех вложенных внутри массивов
42+ Необходимо реализовать рекурсивный фызов функции.
43+ Функция должна открывать любое количество
44+ внутренних массивов и объектов
45+ example:
46+ [[1,2],[3,[4]],5, 10] => [1, 2, 3, 4, 5, 10]
47+ [25, 10, [10, [15]]] => [25, 10, 10, 15]
48+ [1, [2, [ {a: "b", c: 'd' }, { c: [1, 2, 5] } ] ] ] => [1, 2, {a: "b"}]
49+ */
50+
51+ //#1 arr == [...] flattenedArray = [1] + flatten = [2, [{a: "b"}, { c: 'd' }]]
52+ //#2 arr == [2, [ {a: "b"}, { c: 'd' } ] ] flattenedArray = [2] + flatten == [{a: "b"}, { c: 'd' }]
53+ //#3 arr == [ {a: "b"}, { c: 'd' } ] flattenedArray = [{a: "b"}, { c: 'd' }]
54+ //#
55+ const flatten = arr => {
56+ if ( Array . isArray ( arr ) ) {
57+ return arr . reduce ( function ( newArr , elem ) {
58+ return newArr . concat ( flatten ( elem ) )
59+ } , [ ] )
60+ }
61+ return arr
62+ } ;
63+
64+
65+
66+ console . log ( flatten ( [ [ 1 , 2 ] , [ 3 , [ 4 ] ] , 5 , 10 ] ) ) ;
67+ console . log ( flatten ( [ 25 , 10 , [ 10 , [ 15 ] ] ] ) ) ;
68+ console . log ( flatten ( [ 1 , [ 2 , [ { a : "b" , c : 'd' } , { c : [ 1 , 2 , 5 ] } ] ] ] ) ) ;
69+
70+ /*
71+ Виртуализировать таблицу, сделать рендер всей
72+ таблицы через JavaScript.
73+ Второй макет.
74+ https://github.com/aleksandra-maslennikova/telephone-book/blob/master/index.html
75+ Выглядеть должно так же: https://aleksandra-maslennikova.github.io/telephone-book/index.html
76+ */
0 commit comments