Javascript-форум (https://javascript.ru/forum/)
-   Сайт Javascript.ru (https://javascript.ru/forum/site/)
-   -   Новый тест (https://javascript.ru/forum/site/1143-novyjj-test.html)

Илья Кантор 07.04.2008 23:45

Новый тест
 
Вперед, кидайте предложения по новым тестам на javascript.ru

Раздел пользуется большой популярностью, будет интересно его расширить! ;)

tenshi 08.04.2008 00:44

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

Илья Кантор 08.04.2008 04:05

Тесто по функциональному программированию на JS ?
Хотя бы 3 вопроса приведи для примера ?

tenshi 08.04.2008 10:46

какой код соответствует парадигме функционального программирования? (чекбоксы)

function xyz( a, b ){ return a + b }

var xyz= function( a, b ){ return a + b }

var xyz= function( a, b ){ var res= a + b; return res }

function xyz( a ){ return function( b ){ return a + b } }

tenshi 08.04.2008 10:53

какие правила нужно соблюдать, чтобы программу можно было назвать декларативной? (чекбоксы)

1. не использовать переменные
2. не изменять значения переменных
3. не использовать замыкания
4. тело программы должно быть одним большим выражением.

tenshi 08.04.2008 11:09

можно ли писать программу и в объектном и в функциональном стиле? (радиобутоны)

1. нельзя, эти парадигмы противоречат друг другу
2. можно, отказавшись от возможности изменять состояние объекта
3. можно, отказавшись от возможности изменять состояние объекта, кроме как во время его создания через конструктор
4. можно, если в слотах объекта будут находиться только функции.

Илья Кантор 08.04.2008 12:33

Давай попробую ответы:

1) 1,4
2) 2. Возможно, также имеется в виду 4, но никто ведь не мешает разбить тело на фунции
3) 3

tenshi 08.04.2008 13:44

1) 1,2,3,4

остальное - правильно

Илья Кантор 08.04.2008 15:46

Давай 1й вопрос изменить тогда.

В каком коде нет явного нарушения принципов функционального программирования ?

И добавить туда вариант какой-нить с циклом for .

tenshi 08.04.2008 16:29

function xyz( a, b ){ 
  for( var i in a ) 
    if( i in b ) return i; 
  return null;
}


Часовой пояс GMT +3, время: 14:12.