Bug Tracker

Ticket #10089 (closed bug: invalid)

Opened 3 years ago

Last modified 3 years ago

.data() and 64 bit integer

Reported by: joakim.hamren@… Owned by:
Priority: undecided Milestone: None
Component: unfiled Version: 1.6.1
Keywords: Cc:
Blocking: Blocked by:

Description

I just fixed a bug where my ID, which is a 64 bit integer, would be truncated to a 32 bit integer. I'm aware of this limitation in javascript, but it's still quite a nasty bug to find. Perhaps some warning or to return it as a string would be safer approach.

E.g:

.data('userid') -> 2820496456973446000
.attr('data-userid') -> "2820496456973446118"

Change History

comment:1 Changed 3 years ago by dmethvin

  • Status changed from new to closed
  • Resolution set to invalid

Javascript itself only supports about a 48-bit integer since it's the mantissa of a 64-bit floating point number. That's not something under the control of jQuery. Get the attribute as a string rather than using .data().

Note: See TracTickets for help on using tickets.