মানব পাঠযোগ্য বিন্যাসে টাইমস্ট্যাম্প


90

জাভাস্ক্রিপ্ট ব্যবহার করে ইউনিক্স টাইমস্ট্যাম্প থেকে মানব প্রতিনিধিতে রূপান্তর করার সময় আমার একটি আশ্চর্য সমস্যা রয়েছে strange

এখানে টাইমস্ট্যাম্প

1301090400

এটি আমার জাভাস্ক্রিপ্ট

var date = new Date(timestamp * 1000);
var year    = date.getFullYear();
var month   = date.getMonth();
var day     = date.getDay();
var hour    = date.getHours();
var minute  = date.getMinutes();
var seconds = date.getSeconds();  

আমি আশা করেছি ফলাফলটি ২০১১ 2, 25 22 00 00 হবে। তবে এটি 2011, 2, 6, 0, 0, 0 আমি কী মিস করছি?


4
এটি কি এই সহায়তা করে: stackoverflow.com/questions/847185/…
— জেমস হুলস

আমি যা করি তা একই
— জর্জিভিচ

আমি এটি ফায়ারফক্স ফায়ারব্যাগ কনসোলে চেষ্টা করেছি এবং প্রত্যাশিত ফলাফল পেয়েছি। আপনি কোন ব্রাউজার / ওএস ব্যবহার করছেন?
— অ্যান্ড্রুমু

আমি একটি জিসফিল তৈরি করেছি এবং এটি দুর্দান্ত কাজ করছে বলে মনে হচ্ছে: jsfiddle.net/9SUqX (আমি অপেরাতে পরীক্ষা করেছি)
— জেমস হুলস

এখানে আমি যা পেয়েছি img841.imageshack.us/i/screenhot20110324at113.png
— জর্জিভিচ

উত্তর:


102

getDay()সপ্তাহের দিন ফেরত দেয়। তারিখ পেতে, ব্যবহার করুন date.getDate()। getMonth()মাসটি পুনরুদ্ধার করে, তবে মাসটি শূন্য ভিত্তিক, সুতরাং ব্যবহার getMonth()+1করা আপনাকে সঠিক মাস দেয়। সময় মান এখানে ঠিক আছে বলে মনে হচ্ছে, যদিও ঘন্টাটি এখানে 23 (GMT + 1)। আপনি সার্বজনীন মান চান, যোগ UTCপদ্ধতি (যেমন date.getUTCFullYear(), date.getUTCHours())

var timestamp = 1301090400,
date = new Date(timestamp * 1000),
datevalues = [
   date.getFullYear(),
   date.getMonth()+1,
   date.getDate(),
   date.getHours(),
   date.getMinutes(),
   date.getSeconds(),
];
alert(datevalues); //=> [2011, 3, 25, 23, 0, 0]

4
আপনার তারিখের জন্য সাহায্যের পরামর্শ, তবে আমি ঘন্টা, মিনিট এবং সেকেন্ডের মধ্যে কী ভুল তা এখনও বুঝতে পারি না
— জর্জিভিচ

7
@ জর্জি আপনি কিছুই মিস করবেন না এই মানগুলি পূর্ণসংখ্যা, তাই "00" এর মতো মান থাকতে পারে না। আপনি এটিকে সহজেই সংযোজন করতে পারেন উদাহরণস্বরূপminute = (minute < 10 ? "0" : "") + minute;
— শ্যাডো উইজার্ড 9

@ জর্জেভিচ: আপনি কোন সময় অঞ্চলে? আপনি যদি ব্যবহার করেন তবে কী হবে date.getUTCHours()?
— KooiInc

4
GMT + 2 তারিখ.জেটচোর্সের ফলাফল () 19
— জর্জিভিচ

GMT + 2, সুতরাং 22 ঘন্টা সর্বজনীন সময় = 0 ঘন্টা আপনার সময়। ইউটিসি-মানগুলি ব্যবহার করে এখানে একটি জাসফিডাল রয়েছে: jsfiddle.net/EZFG9 ।
— KooiInc

48
var newDate = new Date();
newDate.setTime(unixtime*1000);
dateString = newDate.toUTCString();

unixtimeআপনার এসকিএল ডিবি দ্বারা ফিরে আসা সময়টি কোথায় ? যদি এটি সাহায্য করে তবে এখানে একটি বেহুদা রয়েছে ।

উদাহরণস্বরূপ, বর্তমান সময়ের জন্য এটি ব্যবহার:

document.write( new Date().toUTCString() );


আমি এই উত্তর, এবং গ্রহণযোগ্য আনোয়ার এখানে পাওয়া [* .toString ()] উপযোগী হতে হবে: stackoverflow.com/questions/13622142/... এখানে একটি সারকথা হল: gist.github.com/victoriastuart/b9fb09b890ef88755538b24b0207fece
— ভিক্টোরিয়া স্টুয়ার্ট

4
"unixtime is undefined"আমি এখানে যা পাচ্ছি তা হল
— কেটি

4
যাইহোক, সহজেই অনিলাইনারে পরিণত করা যেতে পারেnew Date(1480966325 * 1000).toUTCString()
— রোজক্যালেন্স

9

এখানে কোলঙ্কের উত্তর ডাব্লু / প্যাডেড 0

function getFormattedDate() {
    var date = new Date();

    var month = date.getMonth() + 1;
    var day = date.getDate();
    var hour = date.getHours();
    var min = date.getMinutes();
    var sec = date.getSeconds();

    month = (month < 10 ? "0" : "") + month;
    day = (day < 10 ? "0" : "") + day;
    hour = (hour < 10 ? "0" : "") + hour;
    min = (min < 10 ? "0" : "") + min;
    sec = (sec < 10 ? "0" : "") + sec;

    var str = date.getFullYear() + "-" + month + "-" + day + "_" +  hour + ":" + min + ":" + sec;

    /*alert(str);*/

    return str;
}

7

ঘন্টা, মিনিট এবং সেকেন্ড আপনার অপারেটিং সিস্টেমের সময় জোনের উপর নির্ভর করে। GMT (ইউএসটি) এ এটি 22:00:00 কিন্তু বিভিন্ন টাইম জোনে এটি যে কোনও কিছু হতে পারে। GMT তারিখটি তৈরি করতে টাইমজোনটিকে অফসেটের সময় হিসাবে যুক্ত করুন:

var d = new Date();
date = new Date(timestamp*1000 + d.getTimezoneOffset() * 60000)

টাইমস্ট্যাম্প 1000 বার কেন?
— ব্রুনো গোমেস

4
@ ব্রুনোগোমস তিনি ধরে নিচ্ছেন যে টাইমস্ট্যাম্পটি সেকেন্ডের মধ্যে রয়েছে, যখন জাভাস্ক্রিপ্ট তাদের মিলিসেকেন্ডে করে।
— ব্রেন্ট

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.