Size: a a a

2021 February 27

УТ

Устинов Тихон... in Kotlin JS
дак и что в итоге делать с Long? Чтобы для пользователей были нормальные id а не объекты и не строки
источник

AN

Alexander Nozik in Kotlin JS
Устинов Тихон
дак и что в итоге делать с Long? Чтобы для пользователей были нормальные id а не объекты и не строки
Пользователи - это кто?
источник

УТ

Устинов Тихон... in Kotlin JS
Другие программисты которые используют нашу библиотеку
источник

AN

Alexander Nozik in Kotlin JS
Если это со стороны JS, то им пофигу, строка там или число
источник

AN

Alexander Nozik in Kotlin JS
Программисты на JS или на котлин?
источник

УТ

Устинов Тихон... in Kotlin JS
и то и то
источник

УТ

Устинов Тихон... in Kotlin JS
число и строка разные вещи даже на js
источник

AN

Alexander Nozik in Kotlin JS
Ну так это две совсем разные вещи. С точки зрения котлин лучше оставить kotlin.Long. С точки зрения JS лучше сконвертировать в строку, если это просто id
источник

OY

Oleg Yukhnevich in Kotlin JS
Мне кажется, здесь уже выше рассмотрели варианты:
1. Не используйте лонг
2. Использовать строки, внутри которых лонг (это всё равно айди просто)
3. Использовать какую-то библиотеку для эмулирования лонг
4. Следить за тем, что лонг айди не больше 2^53

В любом случае, в js нет настоящего лонга как число
источник

УТ

Устинов Тихон... in Kotlin JS
в js есть Number, в который спокойно вмещается long
источник

УТ

Устинов Тихон... in Kotlin JS
почему он просто не число?
источник

OY

Oleg Yukhnevich in Kotlin JS
Устинов Тихон
почему он просто не число?
Это объект, а не примитив/число
И он как раз принимает строку в конструкторе
Но здесь мои познания работы с числами в js можно сказать заканчиваются)
источник

AL

Alexander Levin in Kotlin JS
Устинов Тихон
в js есть Number, в который спокойно вмещается long
JS Number покрывает весь диапазон значений Kotlin Long, но точно не все значения (как выше сказали, после 2^53 будут проблемы)
источник

УТ

Устинов Тихон... in Kotlin JS
Alexander Levin
JS Number покрывает весь диапазон значений Kotlin Long, но точно не все значения (как выше сказали, после 2^53 будут проблемы)
да я уже проверил на определенном моменте будет обрезаться, по идее BigInt тогда мог бы подойти
источник

AL

Alexander Levin in Kotlin JS
Устинов Тихон
да я уже проверил на определенном моменте будет обрезаться, по идее BigInt тогда мог бы подойти
В BigInt конечно влезет, но он и не так давно появился, что может быть проблемой. Ну и может для кого-то это будет слишком неоптимально, не уверен.
источник

УТ

Устинов Тихон... in Kotlin JS
https://tc39.es/ecma262/
Он добавлен в стандарт, на сколько я понимаю поддержка будет обязательная в этом году как выйдет в релиз ECMAScript 2021
источник

УТ

Устинов Тихон... in Kotlin JS
источник

УТ

Устинов Тихон... in Kotlin JS
источник

УТ

Устинов Тихон... in Kotlin JS
источник

УТ

Устинов Тихон... in Kotlin JS
Поддержка браузерами тоже нормально если не считать от IE
источник