جافاسكريبت - احصل على طابع زمني بالتوقيت العالمي الموحد (UTC)


كيف يمكنني الحصول على الطابع الزمني الحالي بتوقيت UTC في جافاسكريبت؟ أريد القيام بذلك حتى أتمكن من إرسال الطوابع الزمنية من جانب العميل التي تكون مستقلة عن المنطقة الزمنية لديهم.

الإجابة رقم 1

const timestamp = new Date().getTime()

console.log(timestamp)

لمزيد من المعلومات، انظر إجابة @James McMahon.

الإجابة رقم 2

كما أشار الساحر، الطريقة الصحيحة هي،

new Date().getTime();

أو تحت جافاسكريبت 1.5، فقط

Date.now();

من الوثائق,

القيمة التي تُرجعها طريقة getTime هي عدد المللي ثانية منذ 1 يناير 1970 00:00:00 بالتوقيت العالمي المنسق.

إذا أردت إنشاء طابع زمني بدون أجزاء من الثانية يمكنك استخدام،

Math.floor(Date.now() / 1000);

كنت أريد جعل هذا إجابة حتى تكون الطريقة الصحيحة أكثر وضوحًا.

يمكنك مقارنة نتائج ExpExc و Narendra Yadala مع الطريقة أعلاه على http://jsfiddle.net/JamesFM/bxEJd/، والتحقق من ذلك على http://www.unixtimestamp.com/ أو عن طريق تشغيل date +%s على طرفية يونكس.

الإجابة رقم 3

يمكنك استخدام طريقة Date.UTC للحصول على الطابع الزمني في المنطقة الزمنية UTC.

الاستخدام :

var now = new Date;
var utc_timestamp = Date.UTC(now.getUTCFullYear(),now.getUTCMonth(), now.getUTCDate() , 
      now.getUTCHours(), now.getUTCMinutes(), now.getUTCSeconds(), now.getUTCMilliseconds());

عرض تجريبي مباشر هنا http://jsfiddle.net/naryad/uU7FH/1/

الإجابة رقم 4

... التي تكون مستقلة عن منطقتها الزمنية

var timezone =  d.getTimezoneOffset() // difference in minutes from GMT