اذهب إلى المحتوى
  • 0

طريقة تغيير تاريخ الأمس من خلال جافاسكريبت

Hasan Hsoub

السؤال

Recommended Posts

  • 0

بالطبع، يمكنك استخدام مكتبة تاريخ ووقت جافا المعروفة ب (`java.time`) لتغيير التاريخ فهناك عدة طرق للقيام بذلك، مثلا يمكنك القيام به بهذا الشكل:

import java.time.LocalDate;

public class ChangeDateExample {
    public static void main(String[] args) {
        // الحصول على تاريخ اليوم الحالي
        LocalDate today = LocalDate.now();
        System.out.println("تاريخ اليوم قبل التغيير: " + today);

        // تغيير تاريخ اليوم
        LocalDate newDate = today.withYear(2023).withMonth(9).withDayOfMonth(15);
        System.out.println("تاريخ اليوم بعد التغيير: " + newDate);
    }
}

فهنا قمت بتعريف تاريخ اليوم باستخدام `()LocalDate.now`، ثم قمت بتغيير التاريخ باستخدام دوال `()withYear()`، `withMonth`، و `()withDayOfMonth`.

يمكنك تصفح هذا المصدر للمزيد من المعلومات:

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

في البداية نقوم بكتابة التاريخ بالطريقة المعتادين عليها

let today = new Date();
let day = today.getDate();
let month = today.getMonth() + 1;
let year = today.getFullYear();

والان دعنا نفكر قليلا كيف يمكننا فعل ذلك ؟؟ تاريخ البارحة هو عبارة عن تاريخ اليوم ناقص واحد اليس كذلك ؟

ولكن هناك بعض الشروط الذي يجب اخذها بعين الاعتبار ك الاشهر التي هي 31 يوم والاشهر التي هي 30 يوم وحتى اول يوم بالسنة الجديدة لذلك دعنا نقوم بكتابة ذلك عن طريقة اضافة بعض الشروط للكود 

if (day === 1 && month === 1) {
    year = year - 1;
    month = 12;
    day = 31;
}

هنا قلنا انه اذا كنا اول يوم من الشهر واول يوم من السنة ايضا اي انه بتاريخ 1/1/2023 مثلا فأن البارحة كان 31/12/2022 لذلك قمنا بنقاص السنة 1 والشهر او 12 واليوم 31  

else if (day === 1 && month === 5 || month === 7 || month === 8 || month === 10 || month === 12) {
    month = month - 1;
    day = 30;
}

هنا نرى اننا وضعنا ارقام الاشهر الذي يسبقها شهر عدد ايامه 30 يوما مثلا شهر 4 هو 30 يوم ونحن اليوم بتاريخ 1/5 لذلك علينا انقاص واحد من الشهر الخاص ووضع اليوم 30 

ونفس الشي يمكنك فعله للعكس اي للاشهر التي تكون 31 يوم اي نكتب الشيفرة التالية 

والان دعنا نكتب تاريخ شهر شباط الذي يكون 28 او 29 حسب السنة ان كانت كبيسة ام لاء ويمكننا معرفة السنة ان كانت كبيسة ام لاء عن طريق قسمتها على 4 فأن قبلت القسمة ولم يبقى اي باقي فأنها كبيسة وبالتالية شبط 29 يوم والان دعنا نكتب هذه الشروط عن طريق الكود 

else if (day === 1 && month === 3 && year % 4 === 0) {
    month = month - 1;
    day = 29;
}
else if (day === 1 && month === 3 && year % 4 !== 0) {
    month = month - 1;
    day = 28;
}

والان في نهاية الامر سنكتب تاريخ الايام العادية اي مثل اليوم نحن في 18/3 ونريدخ ان يعرض تاريخ البارحة 17/3 فقط نقوم بأنقاص اليوم 1 كالتالي 

else {

    day = day - 1;

}

والان قم بطباعة جميع تلك الاوامر والشروط  عن طريق ال console  للتأكد من اجابتك 

console.log(day + '/' + month + '/' + year);

وبالتوفيق لك..

تم التعديل في بواسطة Najah Alsaker
رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

أظن المقصود هو الجافاسكريبت؟

 لفعل ما تريد عليك باستخدام كائن التاريخ في اللغة وهو Date:

// الحصول على تاريخ الأمس
const yesterday = new Date(Date.now() - 86400000); // 86400000 = 24 ساعة * 60 دقيقة * 60 ثانية * 1000 مللي ثانية


// الحصول على التاريخ في شكل يوم شهر سنة
console.log(yesterday.toLocaleDateString());

والفكرة كلها تتمحور في حذف يوم من التاريخ الحالي، ونقوم بتحذف قيمة يوم لكن بالثواني:

  • 86400000 = 24 ساعة * 60 دقيقة * 60 ثانية * 1000 مللي ثانية
رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

يمكنك فعل ذلك بطريقة بسيطة جدا وهي أن تقوم بتعريف تاريخ اليومو من ثم تقوم بإنقاص 1 منه, ولكن باستخدام التوابعالخاصة بالكائن Date
 

// الحصول على تاريخ اليوم
var today = new Date();

// الحصول على تاريخ الأمس
var yesterday = new Date();
yesterday.setDate(today.getDate() - 1);//هنا وضعنا تاريخ الأمس على أنه هو تاريخ اليوم منقوصا منه 1

console.log("تاريخ اليوم: " + today);
console.log("تاريخ الأمس: " + yesterday);

و هنا تابعsetDate هومن سيتولى أمر معالجة الحالات الحدية كأن يكون اليوم هوأخر يوم في الشهر أو في السنة أو أن السنة كبيسة ...الخ

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

هذا الكود ينشئ كائن تاريخ جديد يمثل اليوم الحالي، ثم يطرح يوم واحد من تاريخ اليوم الحالي للحصول على تاريخ الأمس. 

// الحصول على تاريخ اليوم الحالي
var today = new Date();

// طرح يوم واحد من تاريخ اليوم الحالي للحصول على تاريخ الأمس
var yesterday = new Date(today);
yesterday.setDate(today.getDate() - 1);

// عرض التاريخ الأمس
console.log("تاريخ الأمس: " + yesterday);

ويمكنك الاستمرار وتهيئة التاريخ بالشكل الذي تريد (ايام-ساعات-دقائق)
 


// الحصول على اليوم
var day = yesterday.getDay();

// الحصول على الساعة
var hours = yesterday.getHours();

// الحصول على الدقائق
var minutes = yesterday.getMinutes();

// عرض النتائج
console.log("اليوم: " + day);
console.log("الساعة: " + hours);
console.log("الدقائق: " + minutes);

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...