জাভাস্ক্রিপ্টে তারিখের দিনগুলি বিয়োগ করুন


602

তারিখ গ্রহণের সহজ উপায় (উদাহরণস্বরূপ আজ) এবং এক্স দিন ফিরে যাওয়ার কথা কি কেউ জানেন?

সুতরাং, উদাহরণস্বরূপ, আমি যদি আজকের 5 দিন আগে তারিখটি গণনা করতে চাই।


4
আমি গৃহীত উত্তরটি ব্যবহার করে সমস্যা পেয়েছি। দৃশ্যত সেটডেটে নেতিবাচক মানগুলি ব্যবহার করা () প্রত্যাশার মতো কাজ করে না। অন্য একটি (আরও ভাল?) সমাধানের জন্য stackoverflow.com/a/9037132/792287 দেখুন ।
vandiedakaf


উত্তর:


960

এরকম কিছু চেষ্টা করুন:

 var d = new Date();
 d.setDate(d.getDate()-5);

নোট করুন যে এটি তারিখের অবজেক্টটি সংশোধন করে এবং আপডেটের তারিখের সময়মূল্য দেয়।

var d = new Date();

document.write('Today is: ' + d.toLocaleString());

d.setDate(d.getDate() - 5);

document.write('<br>5 days ago was: ' + d.toLocaleString());


9
এর আউটপুট আমাকে পূর্ণসংখ্যার দীর্ঘ স্ট্রিং দেয়। এটিকে 05/14/2012 এ ফর্ম্যাট করার কোনও ধারণা?
ব্যবহারকারীর 2525146

162
এটি গুগলের শীর্ষে রয়েছে বলে আমি অনুভব করেছি যে আমি উপরের মন্তব্যটির উত্তর দেব: new Date(new Date().setDate(new Date().getDate()-5))- এটি 5 দিন আগে হবে। উত্তরের উদাহরণে, তারিখের অবজেক্ট পেতে এটি একটি নতুন তারিখে পাস করুন। আপনি new Date(d)কি চান তাই ।
জেসি

8
এর সাথে সমস্যা হ'ল আপনি 00 দিয়ে শেষ করতে পারেন যা তারিখের জন্য বৈধ মান নয়।
ডমিনিকএম

24
setDate(-1)মাসের শেষ দিন তারিখ নির্ধারণ করবে
পিটার

5
@ ব্যবহারকারী525146 জিজ্ঞাসা করেছিল যে কীভাবে নম্বরটি বিন্যাস করতে হবে, সংখ্যাটি কী নয়। নিবিড় উত্তরের প্রয়োজন নেই। নম্বর, তারিখ একটি ব্যবহার ফর্ম্যাট করতে toStringমত পদ্ধতি toISOString, toDateStringইত্যাদি
ত্রুটিযুক্ত অনুরোধ

83
var dateOffset = (24*60*60*1000) * 5; //5 days
var myDate = new Date();
myDate.setTime(myDate.getTime() - dateOffset);

আপনি যদি আপনার ওয়েব অ্যাপ্লিকেশন জুড়ে প্রচুর মাথাব্যথা ডেট ম্যানিপুলেশন করছেন, ডেটজেএস আপনার জীবনকে আরও সহজ করে তুলবে:

http://simonwillison.net/2007/Dec/3/datejs/


23
এটি একটি প্রান্তের কেস, তবে এটি দিবালোকের সাশ্রয় সময় শুরুর / শেষের দিকে ব্যর্থ হতে পারে। আপনি 5 দিন, কিন্তু 5 * 24 ঘন্টা বিয়োগ করছেন না। দিবালোক সংরক্ষণের প্রথম দিনটি কেবল ২৩ ঘন্টা দীর্ঘ এবং শেষটি 25 ঘন্টা দীর্ঘ। এটি সাধারণত কিছু যায় আসে না, তবে এটি বিবেচনা করার মতো বিষয়।
18:55 এ 20

11
@ কিপ আমি দিবালোকের সঞ্চয় সময় এবং সময় অঞ্চলগুলি ঘৃণা করি। আমাদের সকলকে GMT এ চলে যাওয়া উচিত।
cwallenpoole

6
@ cwallenpoole আপনার বুদ্বুদ ফেটে না যায়, তবে তারা গ্রিনিচ এমনকি ডিএসটি ব্যবহার করে। সুতরাং আপনি যদি সত্যিই জিএমটিতে থাকতে চান তবে আপনি আইসল্যান্ড এবং কয়েকটি পশ্চিম-আফ্রিকার দেশগুলিতে সীমাবদ্ধ।
কিপ

1
এই পদ্ধতির সমস্যাটি হ'ল এটি নতুন বছর ইত্যাদি নিয়ে কাজ করে না
ড্যানিয়েল উইলিয়ামস

4
@ ড্যানিয়েল উইলিয়ামস কীভাবে এটি একটি নতুন বছরের সাথে কাজ করে না? যুগের পর থেকে getTime()এবং setTime()এটি মিলি সেকেন্ড। সময়টি এক বছরের সীমানা অতিক্রম করে কিনা তা বিবেচ্য নয়।
মাশমাগার

51

এইটার মতো কিছু একটা হচ্ছে:

var d = new Date(); // today!
var x = 5; // go back 5 days!
d.setDate(d.getDate() - x);

এর আউটপুট আমাকে পূর্ণসংখ্যার দীর্ঘ স্ট্রিং দেয়। এটিকে 05/14/2012 এ ফর্ম্যাট করার কোনও ধারণা?
ব্যবহারকারীর 2525146

7
D.setDate এর রিটার্ন মান আসলেই একটি পূর্ণসংখ্যা মান। যাইহোক, আপনি সম্ভবত এই মুহুর্তে রিটার্ন মানটিতে আগ্রহী নন, যেহেতু "ডি" এর আসল মানটি পরিবর্তন করা হয়েছে। আপনার আসল প্রশ্নটি এখন আপনার তারিখটিকে কীভাবে ফর্ম্যাট করবেন, যা এখন "ডি" তে রয়েছে এবং সেটডেটের রিটার্ন মান একেবারেই নয়। (ঠিক আছে, এটি আসলে রিটার্ন মান, তবে এটি সেই তারিখের সাথে নয় এবং আমি আপনাকে বিভ্রান্ত করতে চাই না - কেবল ডি ব্যবহার করুন, এটি দ্রুত হবে)। ফর্ম্যাট করার তারিখগুলির জন্য, আপনি d.getMonth (), d.getFullYear () এবং d.getDate () পদ্ধতি চান। আপনি একজনকে d.getMonth () এ যুক্ত করতে চান, যেহেতু জানুয়ার 0 হ'ল
ক্রিস নিলসন

2
একটি সহজ পদ্ধতি হিসাবে: function getDaysAgo(b){var a=new Date;a.setDate(a.getDate()-b);return a};তারপরেvar daysAgo45 = getDaysAgo(45);
SpYk3HH

@ মিরোক্রসজাক অবশ্যই আপনি যদি মাসের শেষ / শুরুটি অতিক্রম করেন তবে এটি কাজ করে। কেন এটি কাজ করবে না?
ক্রিস নিলসন

23

আমি লক্ষ্য করেছি যে getDays + X দিন / মাসের সীমানা পেরিয়ে কাজ করে না। গেটটাইম ব্যবহার করা ততক্ষণ কাজ করে যতক্ষণ না আপনার তারিখ 1970 এর আগে না।

var todayDate = new Date(), weekDate = new Date();
weekDate.setTime(todayDate.getTime()-(7*24*3600000));

3
আমি একই লক্ষ্য। আমি আরও অবাক হয়েছি বা আমি কিছু মিস করছি?
শন গ্লোভার

11
এটি ভুল, নতুন তারিখ ()। সেট তারিখ (-1) আপনাকে আগের মাসের শেষ দিনটি দেবে।
zbrunson

2
এটি দিবালোক সংরক্ষণের সময় শুরু / শেষের প্রান্তের ক্ষেত্রেও ভুল। আপনার দৃষ্টিভঙ্গিটি প্রতিদিন * 24 ঘন্টা আছে এই ধারণার অধীনে 7 * 24 ঘন্টা বিয়োগ করে। ডিএসটির প্রথম দিনটি কেবল ২৩ ঘন্টা দীর্ঘ এবং শেষ দিনটি 25 ঘন্টা দীর্ঘ। সেটডেট (getDate () - 7) এ সমস্যা হয় না।
কিপ

1
getTime সর্বজনীন সময় বন্ধ কাজ করে। সুতরাং তারিখ অবজেক্ট থেকে 7 দিনের সময় সঠিকভাবে বিয়োগ করবে। আপনি যখন এটি নির্দিষ্ট সময় জোনে একটি স্ট্রিংয়ে রূপান্তর করেন এটি সঠিকভাবে সেই অঞ্চলের জন্য সময়টি প্রদর্শন করবে।
আজর

সময় পরিবর্তনের দিন সম্পর্কে সাবধানতা অবলম্বন করুন। যখন আমরা শরত্কালে ফিরে পড়ি তখন সেই দিনটিতে 25 ঘন্টা থাকে তাই মধ্যরাত থেকে 24 ঘন্টা বিয়োগ করা একই দিনে আপনাকে অবতরণ করবে। তবে এই কৌশলটি (মিলিসেকেন্ডগুলি বিয়োগ করে) কাজ করবে যদি আপনি প্রতিটি অপারেশনের পরের দিনটি নিকটতম মধ্যরাত পর্যন্ত বন্ধ করে দেন। আপনি প্রথমে 12 ঘন্টা যোগ করে তা করতে পারেন, তারপরে ঘন্টাগুলি শূন্যে সেট করে।
চৌম্বকীয়

18

moment.js পান। সমস্ত শীতল বাচ্চারা এটি ব্যবহার করে। এটিতে আরও ফর্ম্যাটিং বিকল্প রয়েছে ইত্যাদি Where

var n = 5;
var dateMnsFive = moment(<your date>).subtract(n , 'day');

ঐচ্ছিক! কৌণিক বন্ধনের জন্য জেএস তারিখের বিষয়টিকে রূপান্তর করুন।

var date = new Date(dateMnsFive.toISOString());

ঐচ্ছিক! বিন্যাস

var date = dateMnsFive.format("YYYY-MM-DD");

আপনার তারিখটি মুহূর্তের মধ্যে দিয়ে যাওয়ার পরে আপনি সতর্কতা পেতে শুরু করবেন। অবচয় হুঁশিয়ারি: প্রদত্ত মান কোনও স্বীকৃত আরএফসি 2822 বা আইএসও ফর্ম্যাটে নেই। মুহূর্তের নির্মাণটি জেএস ডেটে ফিরে আসে (), যা সমস্ত ব্রাউজার এবং সংস্করণে নির্ভরযোগ্য নয়। আরএফসি ২২২২২ / আইএসও তারিখের ফর্ম্যাটগুলি নিরুৎসাহিত করা হবে এবং আসন্ন একটি বড় রিলিজে তা সরানো হবে। আরও তথ্যের জন্য দয়া করে momentjs.com/guides/#/warnings/js- তারিখ দেখুন।
স্যুইচ করুন

13

আমি তারিখের জন্য এই প্রোটোটাইপটি তৈরি করেছি যাতে আমি দিনগুলি বিয়োগ করতে নেতিবাচক মানগুলি এবং দিন যুক্ত করতে ইতিবাচক মানগুলি পাস করতে পারি।

if(!Date.prototype.adjustDate){
    Date.prototype.adjustDate = function(days){
        var date;

        days = days || 0;

        if(days === 0){
            date = new Date( this.getTime() );
        } else if(days > 0) {
            date = new Date( this.getTime() );

            date.setDate(date.getDate() + days);
        } else {
            date = new Date(
                this.getFullYear(),
                this.getMonth(),
                this.getDate() - Math.abs(days),
                this.getHours(),
                this.getMinutes(),
                this.getSeconds(),
                this.getMilliseconds()
            );
        }

        this.setTime(date.getTime());

        return this;
    };
}

সুতরাং, এটি ব্যবহার করতে আমি সহজভাবে লিখতে পারি:

var date_subtract = new Date().adjustDate(-4),
    date_add = new Date().adjustDate(4);

2
আপনি ব্যবহার করতে পারেন d.setDate(d.getDate() + days)জন্য ইতিবাচক ও নেতিবাচক উভয় মান দিন যথাক্রমে যোগ করতে পারেন এবং দিন বিয়োগ করতে হবে। এবং এটি উদাহরণে কাজ করা উচিত (অন্যান্য তারিখের পদ্ধতিগুলির মতো), কোনও অনুলিপি তৈরি করে না ফেরত।
রবজি

13

বিদ্যমান কয়েকটি সমাধান খুব কাছাকাছি ছিল, তবে আমি যা চেয়েছিলাম ঠিক তা নয়। এই ফাংশনটি উভয় ধনাত্মক বা নেতিবাচক মানগুলির সাথে কাজ করে এবং সীমানা ক্ষেত্রে পরিচালনা করে।

function addDays(date, days) {
    return new Date(
        date.getFullYear(),
        date.getMonth(),
        date.getDate() + days,
        date.getHours(),
        date.getMinutes(),
        date.getSeconds(),
        date.getMilliseconds()
    );
}

2
যদি আমি এই পদ্ধতিটি চলতি মাসের 15 তম দিনে 20 দিন যোগ করতে ব্যবহার করি তবে এটি কি পরবর্তী মাসের দিকে ছড়িয়ে পড়ে? মনে হয় না।
বোরা

2
@ বোরা - হ্যাঁ, প্রয়োজনে এটি মাসকে সঠিকভাবে বাড়িয়ে তোলে। উদাহরণস্বরূপ, আগস্ট 15 এ 20 দিন যোগ করা: অ্যাডডয়েস (নতুন তারিখ (2015, 07, 15), 20) "শুক্র সেপ্টেম্বর 2015 2015 00:00:00 জিএমটি -0700 (পিডিটি)"
জোয়েল ফিলমোর

12

আমি গণিতটি মিলি সেকেন্ডে করতে পছন্দ করি। সুতরাং ব্যবহারDate.now()

var newDate = Date.now() + -5*24*3600*1000; // date 5 days ago in milliseconds

এবং যদি আপনি এটি ফর্ম্যাট পছন্দ

new Date(newDate).toString(); // or .toUTCString or .toISOString ...

দ্রষ্টব্য: Date.now()পুরানো ব্রাউজারগুলিতে কাজ করে না (যেমন আমি মনে করি IE8)। পলিফিল এখানে

জুন 2015 আপডেট করুন

@ সকেটপায়ার আমার opালুতা নির্দেশ করেছে। সে হিসাবে তিনি বলেছিলেন "বছরের কোনও একদিনে সময় থাকে 23 ঘন্টা, এবং কিছু সময় সময় অঞ্চল নিয়মের কারণে"।

এর প্রসারিত করতে, উপরের উত্তরের ক্ষেত্রে দিবালোক সংরক্ষণের অপ্রতুল্যতা থাকবে যেখানে আপনি 5 দিনের আগে লাইটাল সেভিং পরিবর্তনের সাথে টাইমজোনটিতে লোকাল দিন গণনা করতে চান এবং আপনি

  • ধরে নিন (ভুলভাবে) যে Date.now() আপনাকে এখনকার লোকাল দেয় এখন সময়, বা
  • .toString()যেটি স্থানীয় তারিখটি দেয় এবং Date.now()ইউটিসি- র বেস তারিখের সাথে সঙ্গতিপূর্ণ নয় এমন ব্যবহার use

যাইহোক, আপনি যদি ইউটিসি-তে সবগুলি গণিত করছেন তবে এটি কাজ করে

উ: আপনি এখন (ইউটিসি) থেকে 5 দিন আগে ইউটিসির তারিখ চান

var newDate = Date.now() + -5*24*3600*1000; // date 5 days ago in milliseconds UTC
new Date(newDate).toUTCString(); // or .toISOString(), BUT NOT toString

বি। আপনি "এখন" ব্যতীত ইউটিসি বেস তারিখ দিয়ে শুরু করুন Date.UTC()

newDate = new Date(Date.UTC(2015, 3, 1)).getTime() + -5*24*3600000;
new Date(newDate).toUTCString(); // or .toISOString BUT NOT toString

3
এটি সুনির্দিষ্ট নয়। বছরের কোনও দিনটিতে 23 ঘন্টা সময় থাকে এবং কিছু সময় সময় অঞ্চল নিয়মের কারণে থাকে।
সকেটপায়ার

আমি যখন লিপ সেকেন্ড থাকি তখন ব্যর্থতার পরিস্থিতি নিয়ে চিন্তিত হই ... তাই সমালোচনামূলক কোডের পক্ষে সম্ভবত ভাল নয়।
রোবোক্যাট

12

আমি getDate () / setDate () পদ্ধতিতে একটি সমস্যা পেয়েছি তা হ'ল এটি খুব সহজেই সবকিছুকে মিলি সেকেন্ডে রূপান্তরিত করে এবং সিনট্যাক্সটি কখনও কখনও আমার অনুসরণ করা শক্ত হয়।

পরিবর্তে আমি 1 দিন = 86,400,000 মিলি সেকেন্ডের সত্যটি কাজে লাগাতে চাই।

সুতরাং, আপনার নির্দিষ্ট প্রশ্নের জন্য:

today = new Date()
days = 86400000 //number of milliseconds in a day
fiveDaysAgo = new Date(today - (5*days))

একটি যাদুমন্ত্র মত কাজ করে.

30/60/365 দিনের গণনা রোলিংয়ের জন্য আমি এই পদ্ধতিটি সর্বদা ব্যবহার করি।

আপনি মাস, বছর, ইত্যাদির সময়ের একক তৈরি করতে খুব সহজেই এটিকে এক্সট্রোপলেট করতে পারেন


11

আপনার তারিখটি অংশগুলিতে বিভক্ত করুন, তারপরে অ্যাডজাস্ট করা মানগুলির সাথে একটি নতুন তারিখ ফিরিয়ে দিন

function DateAdd(date, type, amount){
    var y = date.getFullYear(),
        m = date.getMonth(),
        d = date.getDate();
    if(type === 'y'){
        y += amount;
    };
    if(type === 'm'){
        m += amount;
    };
    if(type === 'd'){
        d += amount;
    };
    return new Date(y, m, d);
}

মনে রাখবেন মাসগুলি শূন্য ভিত্তিক, তবে দিনগুলি হয় না। অর্থাৎ নতুন তারিখ (২০০৯, ১, ১) == 01 ফেব্রুয়ারী ২০০৯, নতুন তারিখ (২০০৯, ১, ০) == ৩১ জানুয়ারী ২০০৯;


2
আপনি যদি এইভাবে একটি তারিখে 50 দিন উদাহরণ হিসাবে যুক্ত করেন তবে কী হবে? এটি 68 আগস্ট 2009 তারিখ নির্ধারণ করবে? বা আপনি কি নিশ্চিত যে এটি সর্বদা যথাযথ মাস এবং / অথবা বছরকে সঠিকভাবে গুটিয়ে রাখে?
জেস্পার

ডেট.প্রোটোটাইপে অ্যাডডেস, অ্যাডমুনথস এবং ক্লাস যুক্ত করতে এটি ব্যবহার করুন। সুন্দর এবং সহজ।
স্কট আইজ্যাকস

1
এটি সঠিক উত্তর হওয়া উচিত - গ্রহণযোগ্য উত্তর ব্যর্থ হলে এটি বছরের শেষ দিনটিতেও কাজ করে।
ক্রিস

1 থেকে 99 সাল পর্যন্ত বছরের জন্য তারিখগুলি কাজ করে না; ;-) কেবলমাত্র get * এবং সেট * পদ্ধতিগুলি ব্যবহার করা আরও অনেক ভাল ।
রবজি

8

দ্বিতীয় পরিবর্তনশীলটি ব্যবহার না করে, আপনি আপনার ব্যাক এক্স দিনের সাথে 7 এর জন্য প্রতিস্থাপন করতে পারবেন:

let d=new Date(new Date().getTime() - (7 * 24 * 60 * 60 * 1000))


2

আমি তারিখের কারসাজির জন্য একটি ফাংশন তৈরি করেছি। আপনি যেকোন সংখ্যক দিন, ঘন্টা, মিনিট যোগ বা বিয়োগ করতে পারেন।

function dateManipulation(date, days, hrs, mins, operator) {
   date = new Date(date);
   if (operator == "-") {
      var durationInMs = (((24 * days) * 60) + (hrs * 60) + mins) * 60000;
      var newDate = new Date(date.getTime() - durationInMs);
   } else {
      var durationInMs = (((24 * days) * 60) + (hrs * 60) + mins) * 60000;
      var newDate = new Date(date.getTime() + durationInMs);
   }
   return newDate;
 }

এখন, পরামিতিগুলি পেরিয়ে এই ফাংশনটি কল করুন। উদাহরণস্বরূপ, আজ থেকে 3 দিনের আগে তারিখ পাওয়ার জন্য এখানে একটি ফাংশন কল রয়েছে।

var today = new Date();
var newDate = dateManipulation(today, 3, 0, 0, "-");

2

মোমেন্টজএস ব্যবহার করুন ।

function getXDaysBeforeDate(referenceDate, x) {
  return moment(referenceDate).subtract(x , 'day').format('MMMM Do YYYY, h:mm:ss a');
}

var yourDate = new Date(); // let's say today
var valueOfX = 7; // let's say 7 days before

console.log(getXDaysBeforeDate(yourDate, valueOfX));
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.22.2/moment.min.js"></script>


1

শীর্ষস্থানীয় উত্তরগুলি আমার কোডটিতে একটি বাগ তৈরি করেছিল যেখানে মাসের প্রথম দিকে এটি চলতি মাসে ভবিষ্যতের তারিখ নির্ধারণ করে। আমি যা করেছি তা এখানে

curDate = new Date(); // Took current date as an example
prvDate = new Date(0); // Date set to epoch 0
prvDate.setUTCMilliseconds((curDate - (5 * 24 * 60 * 60 * 1000))); //Set epoch time

0

তারিখগুলি পরিচালনা করার একটি সহজ উপায় হ'ল মোমেন্ট.জে ব্যবহার করুন

আপনি ব্যবহার করতে পারেন add। উদাহরণ

var startdate = "20.03.2014";
var new_date = moment(startdate, "DD.MM.YYYY");
new_date.add(5, 'days'); //Add 5 days to start date
alert(new_date);

দস্তাবেজ http://momentjs.com/docs/#/manipulating/add/


0

আমি নিম্নলিখিতটি পছন্দ করি কারণ এটি একটি লাইন। ডিএসটি পরিবর্তনের সাথে নিখুঁত নয় তবে সাধারণত আমার প্রয়োজনের জন্য যথেষ্ট ভাল।

var fiveDaysAgo = new Date(new Date() - (1000*60*60*24*5));

0

নীচে কোড স্নিপলেট সহ সমস্ত সংমিশ্রণ আমার পক্ষে সূক্ষ্মভাবে কাজ করেছিল, স্নিপেটটি কৌণিক -২ বাস্তবায়নের জন্য, যদি আপনাকে কিছু দিন যোগ করতে হয়, ধনাত্মক নম্বর দিয়ে যেতে হয়, যদি আপনার পাস নেতিবাচক নম্বরের পদক্ষেপের প্রয়োজন হয়

function addSubstractDays(date: Date, numberofDays: number): Date {
let d = new Date(date);
return new Date(
    d.getFullYear(),
    d.getMonth(),
    (d.getDate() + numberofDays)
);
}

0

আমি তারিখের বাইরে ভাল মাইলেজ পাই get

http://www.datejs.com/

d = new Date();
d.add(-10).days();  // subtract 10 days

নিস!

ওয়েবসাইটে এই সৌন্দর্য অন্তর্ভুক্ত:

ডেটজেস কেবল স্ট্রিংকে বিশ্লেষণ করে না, এটি এগুলিকে দুটি করে পরিষ্কার করে টুকরো টুকরো করে


0

যদি আপনি উভয়ই বেশ কয়েকটি দিন বিয়োগ করতে চান এবং আপনার তারিখটিকে মানব পাঠযোগ্য বিন্যাসে ফর্ম্যাট করতে চান তবে আপনার এমন একটি কাস্টম DateHelperঅবজেক্ট তৈরির বিষয়টি বিবেচনা করা উচিত :

var DateHelper = {
    addDays : function(aDate, numberOfDays) {
        aDate.setDate(aDate.getDate() + numberOfDays); // Add numberOfDays
        return aDate;                                  // Return the date
    },
    format : function format(date) {
        return [
           ("0" + date.getDate()).slice(-2),           // Get day and pad it with zeroes
           ("0" + (date.getMonth()+1)).slice(-2),      // Get month and pad it with zeroes
           date.getFullYear()                          // Get full year
        ].join('/');                                   // Glue the pieces together
    }
}

// With this helper, you can now just use one line of readable code to :
// ---------------------------------------------------------------------
// 1. Get the current date
// 2. Subtract 5 days
// 3. Format it
// 4. Output it
// ---------------------------------------------------------------------
document.body.innerHTML = DateHelper.format(DateHelper.addDays(new Date(), -5));

( এই ফিডলটিও দেখুন )


0

নিম্নলিখিত কোডটি দেখুন, বর্তমান তারিখ থেকে দিনগুলি বিয়োগ করুন। এছাড়াও, বাদ দেওয়া তারিখ অনুসারে মাস নির্ধারণ করুন।

var today = new Date();
var substract_no_of_days = 25;

today.setTime(today.getTime() - substract_no_of_days* 24 * 60 * 60 * 1000);
var substracted_date = (today.getMonth()+1) + "/" +today.getDate() + "/" + today.getFullYear();

alert(substracted_date);

-1

তারিখটি সেট করার সময়, তারিখটি মিলি সেকেন্ডে রূপান্তরিত হয়, সুতরাং আপনাকে এটিকে আবার কোনও তারিখে রূপান্তর করতে হবে:

এই পদ্ধতিটিও বিবেচনায় নেওয়া, নতুন বছরের পরিবর্তন ইত্যাদি take

function addDays( date, days ) {
    var dateInMs = date.setDate(date.getDate() - days);
    return new Date(dateInMs);
}

var date_from = new Date();
var date_to = addDays( new Date(), parseInt(days) );

-1

আপনি জাভাস্ক্রিপ্ট ব্যবহার করতে পারেন।

var CurrDate = new Date(); // Current Date
var numberOfDays = 5;
var days = CurrDate.setDate(CurrDate.getDate() + numberOfDays);
alert(days); // It will print 5 days before today

পিএইচপি এর জন্য,

$date =  date('Y-m-d', strtotime("-5 days")); // it shows 5 days before today.
echo $date;

আশা করি এটা তোমাকে সাহায্য করবে।


-1

আমি মিলিসেকেন্ডে রূপান্তর করেছি এবং কাটা দিনগুলি অন্য মাস এবং বছর পরিবর্তিত হবে না এবং যৌক্তিক হবে

var numberOfDays = 10;//number of days need to deducted or added
var date = "01-01-2018"// date need to change
var dt = new Date(parseInt(date.substring(6), 10),        // Year
              parseInt(date.substring(3,5), 10) - 1, // Month (0-11)
              parseInt(date.substring(0,2), 10));
var new_dt = dt.setMilliseconds(dt.getMilliseconds() - numberOfDays*24*60*60*1000);
new_dt = new Date(new_dt);
var changed_date = new_dt.getDate()+"-"+(new_dt.getMonth()+1)+"-"+new_dt.getFullYear();

আশা সাহায্য করে


-1

var date = new Date();
var day = date.getDate();
var mnth = date.getMonth() + 1;

var fDate = day + '/' + mnth + '/' + date.getFullYear();
document.write('Today is: ' + fDate);
var subDate = date.setDate(date.getDate() - 1);
var todate = new Date(subDate);
var today = todate.getDate();
var tomnth = todate.getMonth() + 1;
var endDate = today + '/' + tomnth + '/' + todate.getFullYear();
document.write('<br>1 days ago was: ' + endDate );


1
আপনার সর্বদা আপনার কোড / উত্তরটির মন্তব্য করা উচিত কারণ কিছু লোক আপনার যা করছেন তা না পেতে পারে
মাইকেল

-1

আধুনিক জাভাস্ক্রিপ্ট ফাংশন সিনট্যাক্স ব্যবহার করে

const getDaysPastDate = (daysBefore, date = new Date) => new Date(date - (1000 * 60 * 60 * 24 * daysBefore));

console.log(getDaysPastDate(1)); // yesterday


-1

এরকম কিছু চেষ্টা করুন

dateLimit = (curDate, limit) => {
    offset  = curDate.getDate() + limit
    return new Date( curDate.setDate( offset) )
}

কারারডেট যে কোনও তারিখ হতে পারে

সীমা দিনের সংখ্যার পার্থক্য হতে পারে (ভবিষ্যতের জন্য ইতিবাচক এবং অতীতের জন্য নেতিবাচক)


-1

এটি আপনাকে শেষ 10 দিনের ফলাফল দেবে 110% কাজ করে আপনি কোনও ধরণের সমস্যা পাবেন না

var date = new Date();
var day=date.getDate();
var month=date.getMonth() + 1;
var year=date.getFullYear();
var startDate=day+"/"+month+"/"+year;
var dayBeforeNineDays=moment().subtract(10, 'days').format('DD/MM/YYYY');
startDate=dayBeforeNineDays;
var endDate=day+"/"+month+"/"+year;

আপনি আপনার প্রয়োজনীয়তা অনুযায়ী বিয়োগের দিনগুলি পরিবর্তন করতে পারেন



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