Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Объясните, как работает скрипт (по человечески, прям что б было понятно) (https://javascript.ru/forum/misc/50000-obyasnite-kak-rabotaet-skript-po-chelovecheski-pryam-chto-b-bylo-ponyatno.html)

maksim_bezgodov 07.09.2014 05:04

Объясните, как работает скрипт (по человечески, прям что б было понятно)
 
http://conspirolog.ru/html-css-javas...h-v-javascript
function declOfNum(number, titles)  
{  
    cases = [2, 0, 1, 1, 1, 2];  
    return titles[ (number%100>4 && number%100<20)? 2 : cases[(number%10<5)?number%10:5] ];  
}

ksa 08.09.2014 07:35

Цитата:

Сообщение от maksim_bezgodov
Объясните, как работает скрипт (по человечески, прям что б было понятно)

Что именно тут не понятно?

В функцию передается число и массив... Функция вернет некий элемент из того массива, согласно условиям... В условиях используется операция "деление по модулю"...

skrudjmakdak 08.09.2014 10:05

(number%100>4 && number%100<20) это выражение проверяет на концовку, если оно в пределах от 5 до 19, то в titles берем 2
если число не заканчивается на (от 4 до 19), то выполним это cases[(number%10<5)?number%10:5]


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