Các câu trả lời ở trên không có tác dụng đối với tôi vì tôi nhận thấy rằng tôi đã không phù hợp với múi giờ. Đối ngày sau trong javascript (lưu ý tháng là zero-lập chỉ mục trong js)
var date1 = Date.UTC(2014, 0, 1)
để có được giá trị giống hệt nhau trong Ruby Tôi đã làm điều này: -
t = Date.new(2014,01,01).to_time
t += t.utc_offset
@timestamp1 = (t.to_i * 1000)
Sau đó, để xác minh trong js
var timestamp1 = <%= @timestamp1 %>;
var timestamp2 = Date.UTC(2014, 0, 1);
var date1 = new Date(timestamp1);
var date2 = new Date(timestamp2);
$("#div1").text("Ruby => " + date1.toUTCString() + ', Tz offset =>' + date1.getTimezoneOffset());
$("#div2").text("JS => " + date2.toUTCString() + ', Tz offset =>' + date2.getTimezoneOffset());
Nguồn
2014-10-10 01:17:25
Tôi đã rối tung lên vì tôi không có chuỗi được phân tích để phân tích cú pháp. Tôi đã bỏ trường ngày tháng của tôi như trong Time.parse (date_var) .utc.to_i và tôi gặp lỗi. Nó có vẻ khá kỳ quặc mà chúng ta phải chuyển đổi một biến ngày thành một chuỗi để có được UTC. Có lẽ không hiệu quả nhất nhưng nó hoạt động. Cảm ơn... – Xaxum