Есть php код для генерации последовательности чисел:
$seed = 100;
$seed = (1103515245 * $seed + 12345) % (1 << 31);
dump($seed);
$seed = (1103515245 * $seed + 12345) % (1 << 31);
dump($seed);
Он сгенерирует два числа:
829870797
1533044610
Этот же код переписанный на javascript:
var seed = 100;
seed = (1103515245 * seed + 12345) % (1 << 31);
console.log(seed);
seed = (1103515245 * seed + 12345) % (1 << 31);
console.log(seed);
Сгенерирует это:
829870797
1533044608
Почему второе число в js отличается и как это оба варианта привести к общему виду?
Оба вывода (и в PHP
и в JavaScript
) неправильны. С PHP
здесь тоже самое, что и с JavaScript
, описанное мной ниже.
Число (1103515245 * 829870797)
выходит за пределы точности чисел в JavaScript
. Смотрите ответ на английском StackOverflow про это.
Если вам в JavaScript
нужно работать с такими числами, то пользуйтесь библиотекой BigInteger.js или Big Number.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Подскажите, пожалуйста, как добавить вывод php кода в тело addScriptDeclaration?
Есть база данных с игроками, тренерами, командами и чемпионатамиКаждая новость должна находится в определенной категории