is JQ Transform modifying numbers? How can I get past it?

前端 未结 1 1010
旧时难觅i
旧时难觅i 2021-01-28 03:09

Why this (\"Filter\" in jqplay.org): {\"key\":633447818234478180}

returns this (\"Result\" in jqplay.org): {\"key\": 633447818234478200}

Original JSON doesn\'t m

1条回答
  •  天涯浪人
    2021-01-28 03:41

    I believe this is because jq can only represent legal JSON data and the number you've given is outside the range that can be represented without loss of precision. See also

    • What is JavaScript's highest integer value that a number can go to without losing precision?

    If you need to work with larger numbers as strings in jq you may want to try this library:

    • jq-bigint
      A big integer library for working with possibly-signed arbitrarily long decimal strings. Written by Peter Koppstein (@pkoppstein) and released under the MIT license.

    0 讨论(0)
提交回复
热议问题