2012-05-02 16 views

Odpowiedz

22

Ponieważ nie określasz języka, zakładam, że masz na myśli JavaScript, tak jak w powłoce.

Jedną z ładnych funkcji powłoki jest jej zakończenie. Więc można zrobić coś takiego:

> db.test.insert({x:new Date()}); 
> var doc = db.test.findOne(); 
> doc 
{ 
"_id" : ObjectId("4fa131851932655dc45027a9"), 
"x" : ISODate("2012-05-02T13:07:17.012Z") 
} 
> doc.x 
ISODate("2012-05-02T13:07:17.012Z") 
> doc.x.<TAB><TAB> 
doc.x.constructor   doc.x.getSeconds(   doc.x.getUTCMinutes(doc.x.setHours(    doc.x.setUTCHours(   doc.x.toLocaleDateString(
doc.x.getDate(    doc.x.getTime(    doc.x.getUTCMonth(   doc.x.setMilliseconds(  doc.x.setUTCMilliseconds( doc.x.toLocaleString(
doc.x.getDay(    doc.x.getTimezoneOffset( doc.x.getUTCSeconds(  doc.x.setMinutes(   doc.x.setUTCMinutes(  doc.x.toLocaleTimeString(
doc.x.getFullYear(   doc.x.getUTCDate(   doc.x.getYear(    doc.x.setMonth(    doc.x.setUTCMonth(   doc.x.toString(
doc.x.getHours(    doc.x.getUTCDay(   doc.x.hasOwnProperty(  doc.x.setSeconds(   doc.x.setUTCSeconds(  doc.x.toTimeString(
doc.x.getMilliseconds(  doc.x.getUTCFullYear(  doc.x.propertyIsEnumerable( doc.x.setTime(    doc.x.setYear(    doc.x.toUTCString(
doc.x.getMinutes(   doc.x.getUTCHours(   doc.x.setDate(    doc.x.setUTCDate(   doc.x.toDateString(   doc.x.tojson(
doc.x.getMonth(    doc.x.getUTCMilliseconds( doc.x.setFullYear(   doc.x.setUTCFullYear(  doc.x.toGMTString(   doc.x.valueOf(

Co chcesz, to prawdopodobnie:

> doc.x.getSeconds(); 
17 
> doc.x.getMinutes(); 
7 
> doc.x.getHours(); 
9 
> doc.x.getDate(); 
2 
> doc.x.getMonth(); 
4 
> doc.x.getFullYear(); 
2012 
+0

dlaczego'doc.x.getMonth(); 'zwraca 4 zamiast 5. – Moj

+1

Prawdopodobnie dlatego, MongoDB wykorzystuje zera oparte indeksy (rozpoczyna się od 0 zamiast 1) –

+2

getMonth() jest funkcją javascript. Rozpoczyna się od 0. Zobacz ten http://www.w3schools.com/jsref/jsref_getmonth.asp – okisinch