Подтвердить что ты не робот

Что делает% в JavaScript?

Что делает% в JavaScript?

Определение того, что это такое и что он делает, будет очень оценено.

4b9b3361

Ответ 1

Это оператор modulo. Смотрите документация или спецификация для получения дополнительной информации об арифметических операциях JavaScript.

% (модуль)

Оператор модуля используется следующим образом:

var1% var2

Оператор модуля возвращает первый операнд по модулю второго операнд, то есть var1 modulo var2, в предыдущем утверждении, где var1 и var2 - переменные. Функция modulo является целым числом остаток деления var1 на var2. Например, 12% 5 возвращает 2. результат будет иметь тот же знак, что и var1; то есть -1% 2 возвращает -1.

Ответ 2

Он возвращает оставшуюся часть операции деления. 5%2 возвращает 1

Ответ 3

Обновление ES6:

Как объясняется в других ответах, он возвращает остаток после деления дивиденда на делитель, однако это уже не оператор modulo, это оператор остатка. различие заключается в том, что результат по модулю оператора будет принимать знак дивизора, а не дивиденд. Цитируется из MDN

Оператор остатка возвращает оставшийся остаток, когда один операнд делится на второй операнд. Он всегда принимает знак дивиденда, а не делитель. Он использует встроенную функцию modulo для получения результата, который является целым остатком деления var1 на var2 - например - var1 modulo var2. Есть предложение получить фактический modulo-оператор в будущей версии ECMAScript, причем разница в том, что результат оператора modulo примет знак делителя, а не дивиденд.

Пример:

-10 % 3 // -1
10 % -3 // 1

Ответ 4

Это будет оператор modulo.

Он возвращает оставшуюся часть операции деления:

var remainder = 3 % 2; // equals 1

Ответ 5

Это по модулю оператор.
Он вычисляет остаток.

Если мы делаем 23% 10,
во-первых, мы разделим 23 на 10, что равно 2.3. то возьмем .3 * (делитель) 10
= 3

Ответ 6

Оператор модуля (%) возвращает остаток.

Если любое значение является строкой, делается попытка преобразовать строку в число.

alert(5%3) будет предупреждать 2

Ответ 7

На всякий случай, если кто-то ищет реальную функцию modulo (которая всегда будет получать знак дивизора), вы можете использовать это:

function Modulo(num, denom)
{
    if (num%denom >= 0)
    {
        return Math.abs(num%denom);
    }
    else
    {
        return num%denom + denom;
    }
}

Math.abs должен предотвратить случай -12% 12 → -0, который считается равным 0, но отображается как -0.

Ответ 8

% выполняет роль оператора modulo, возвращает напоминание о начале. Пример:

<script>
    var x = 5;
    var y = 2;
    var z = x % y;
    alert(z);
</script>

Это будет предупреждать 1.