08moduleFEA4.md 2.1 KB

Type Stats (1)

Написать функцию typeStats, которая возвращает объект с ключами - типами, а значениями - количеством элементов этого типа в массиве:

var arr = ['1', 0, Math.random, alert, prompt, prompt(), null, undefined, "name", {}]

typeStats(arr); //вернет { string: 3 /* или два */, number: 1, function: 3, object: 2 /* или три */, undefined: 1}

Intersect (2)

Написать функцию, которая будет возвращать новый массив с пересечением значений в двух массивах-параметров:


var a = [1,2,3,4]
var b = [3,4,5,6]

intersect(a,b); //[3,4]

oddEvenClass (3)

Написать функцию, которая будет устанавливать два класса детям элемента через один:

oddEvenClass(tbody, 'light', 'dark') //установит всем детям tbody, т. е. tr, классы light и dark через один, сделав подсветку зеброй
oddEvenClass(ul, 'light', 'dark') // аналогично для всех li

UpScroll (4)

Написать функцию, которая перематывает страницу вверх по нажатию на блок, запоминает позицию на странице и возвращается по нажатию вниз при повторном клике.

upScroll(buttonUp)

Tabs (5)

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

tabs([{button: tab1, block: div1},{button: tab2, block: div2},{button: tab3, block: div3}]) //при запуске всё прячется кроме div1, потом по клику на tabN включается divN