2013-08-19 3 views
-1

Предположим, что 6 - это NumberRequiredItems, основанный на некоторых других вычислениях. Я не хочу выдавать все это, просто хочу, чтобы сделать это округлить функциюФункция вычисления округления в Javascript.

Я хочу сделать конкретные округления:

Если в течение 6, округлить до кратного 24 (мин 24), в противном случае округлите вверх до нескольких из 24.

Я получаю, что я буду делать 24 * Math.round (NumberRequiredItems), как мне сделать «В пределах 6»?

e.g ЕСЛИ что-то вроде 56, до 72 пунктов. Если 54, спуститесь до 48 и т. Д.

Я знаю, что это кажется немного сложным, но мне бы очень хотелось помочь. Это может даже помочь вам.

ответ

0

Вы бы использовать оператор Modulo, %, что делает деление и возвращает остаток, чтобы проверить ваше состояние.

Например: 56 % 24 = 8 и 54 % 24 = 6

Я бы написать округление функцию что-то вроде этого:

var roundRequiredItems = function (n) { 
    if (n % 24 <= 6) { 
    return Math.floor(n/24) * 24 
    } else { 
    return Math.ceil(n/24) * 24 
    } 
}; 
0

Вы можете использовать тот факт, что в JavaScript, п + верно равно п + 1 решите свою проблему разумным образом:

function foo(n) 
{ 
    return 24*(Math.floor(n/24) + (n%24 > 6)); 
}