这个JavaScript时区函数最好翻译成Java双基元吗

Will this JavaScript timezone function translate best to a Java double primitive?

本文关键字:Java 翻译 时区 JavaScript 函数 这个      更新时间:2023-09-26

我需要将客户端大小的JavaScript tz_offset变量传递给服务器端的Java tzOffset。此处计算tz_offset

time: function(){
  var d1 = new Date(), d2 = new Date();
  d1.setMonth(0); d1.setDate(1); d2.setMonth(6); d2.setDate(1);
  return({tz_offset: -(new Date().getTimezoneOffset()) / 60, observes_dst: (d1.getTimezoneOffset() !== d2.getTimezoneOffset()) });
}

表示偏移量的最佳Java基元数据类型是什么?字符串,double还是int?

我的最佳猜测是double,但我担心可能无法表示为double的异常值现在我把它作为一个字符串,因为这看起来更安全,但并不理想。

在Java中,大多数日期都存储为Long值。由于它们表示自Unix纪元以来的时间,以毫秒为单位,您不需要浮点精度(la Double),但您需要比Integer提供的比特更多的比特。

因此,我会选择Long,除非您担心javascript代码中的非数字值,而是希望使用String并在服务器端执行到数字的转换。