$currentDate (التاريخ الحالي)

آخر تحديث: 2026-10-09

$currentDate (التاريخ الحالي)

يعيّن $currentDate حقلًا على الوقت الحالي ككائن Date أو Timestamp. فالعبارة `{ $currentDate: { lastModified: true } }` تخزن Date افتراضيًا؛ و`{ $currentDate: { lastModified: { $type: 'timestamp' } } }` تخزن Timestamp. وهو أدق من new Date() من جانب العميل ويتجنب انحراف الساعة بين الخادم والعميل.

الفئةتحديث الحقل
إصدار MongoDB3.6+
لغة المثالmongosh (الطرفية)

📝 الصيغة

{ $currentDate: { <field>: true | { $type: 'timestamp' | 'date' } } }

⚙️ المعلمات

حقلالحقل المراد ضبطه على الوقت الحالي.
النوع‏true يخزّن قيمة Date؛ يمكن تحديد ‏'timestamp' أو 'date' صراحةً.

القيمة المرجعة:نتيجة التحديث

▶ مثال

نفّذ الأوامر التالية في mongosh المحلي لديك (يتطلب تشغيل mongod):

// $currentDate: تسجيل وقت التعديل
// true يخزن Date افتراضيًا
db.articles.updateOne(
  { _id: 1 },
  { $currentDate: { lastModified: true } }
)

// Timestamp صريح
db.articles.updateOne(
  { _id: 1 },
  { $currentDate: { lastModified: { $type: 'timestamp' } } }
)

المخرجات:

// يُعيّن lastModified على وقت الخادم كـ Date أو Timestamp

📌 ملاحظات

📚 دروس ذات صلة

❓ الأسئلة الشائعة

Qما الفرق بين $currentDate و $set: new Date()؟
Aيقرأ $currentDate ساعة الخادم باستمرار؛ بينما يستخدم $set وقت العميل، الذي قد يختلف عبر العملاء.
Qهل يمكنه تخزين Timestamp؟
Aنعم، حدد { $type: 'timestamp' }.
Qهل يستبدل $currentDate القيم الموجودة؟
Aنعم، يستبدلها بالوقت الحالي.
Web-Tutorial.com

فريق Web-Tutorial التقني

منصة دروس برمجية يديرها عدة مطورين. كل درس يتم كتابته ومراجعته بواسطة مطورين متخصصين في المجال. نعمل على ضمان دقة وموثوقية المحتوى — إذا لاحظت أي مشكلة، فيرجى إخبارنا.

100%