Сначала вы должны использовать 64-битные номера (длинный или лучший, без знака длинный, если все положительно). С unsigned long вы можете работать между 0 и 18446744073709551615, с длинными между -9223372036854775808 и 9223372036854775807.
Если этого недостаточно, то нет простого решения, вам нужно выполнить свою работу на программном уровне с помощью массивов например, unsigned long, и перегрузка "& lt; & lt; оператор для отображения. Но это не так просто, и я думаю, что вы новичок (без обид), учитывая вопрос, который вы задали.
Если для вас недостаточно 64-битного представления, я думаю, вам следует рассмотреть возможность с плавающей запятой представительство, особенно «двойное». С двойным вы можете представлять числа между примерно -10 ^ 308 и 10 ^ 308. Вы не сможете получить абсолютно точные вычисления на очень большом количестве (наименее значимые цифры не будут вычислены), но это должно быть достаточно хорошим вариантом для того, что вы хотите здесь сделать.
Из того, что я выхожу из вашего вопроса, прослушивание события изменения размера действительно не будет делать разрез для печати. Итак, вам нужно послушать запрос на печать и запустить из него код изменения:
window.addEventListener("beforeprint", beforePrint);
window.addEventListener("afterprint", afterPrint);
if (window.matchMedia) {
var mediaQueryList = window.matchMedia('print');
mediaQueryList.addListener(function(mql) {
if (mql.matches) {
beforePrint();
} else {
afterPrint();
}
});
}
function beforePrint() {
//Resize for printing
}
function afterPrint() {
//Resize again for after printing
}
Это взято из этой статьи . Пожалуйста, прочитайте его для более подробного описания, ограничений и других возможных обходов.
Для любых других ситуаций, когда вам нужно изменить размер, но событие изменения размера окна недостаточно, обычно есть как минимум полупростой обход. JavaScript - это ваш единственный вариант для чего-то такого же сложного, как сортировка и размер элементов на графике.