JavaScript - Error fecha con javascript

 
Vista:
sin imagen de perfil

Error fecha con javascript

Publicado por Gabriel (2 intervenciones) el 17/08/2017 07:38:03
Hola amigos
No entiendo mucho de javascript pero tengo el codigo que pondre a continuacion, el problema que en vez de arrojarme 1 año y 1 mes me devuelve 100 años y 5 meses, me podrian ayudar a ver cual es el error ya que he tratado pero con los pocos conocimientos que tengo no soy capaz de arreglarlo
Muchas gracias a todos.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
<SCRIPT LANGUAGE="JavaScript">
function DateEstablished(startmonth, startdate, startyear) {
sdate=startdate;
smonth=startmonth-1;
syear=startyear;
var DaysInMonth = new Array(31,28,31,30,31,30,31,31,30,31,30,31);
today = new Date()
var thisyear = today.getFullYear();
var thismonth = today.getMonth();
var thisdate = today.getDate();
mstart = new Date(syear,(smonth==12?1:smonth+1),1);
days1 = (mstart - new Date(syear,smonth,sdate))/(24*60*60*100)-1;
mend = new Date(thisyear,thismonth,1);
days2 = (new Date(thisyear,thismonth,thisdate) - mend)/(24*60*60*100)+1;
dayst = days1 + days2;
if (dayst >= DaysInMonth[smonth])  {
AddOneMonth = 1;
dayst -= DaysInMonth[smonth];
}
else AddOneMonth = 0;
ydiff1 = thisyear-mstart.getFullYear();
mdiff1 = thismonth-mstart.getMonth()+AddOneMonth;
if (mdiff1 >11) { mdiff1=0; ydiff1++; }
if (mdiff1 < 0) { mdiff1 = mdiff1 + 12; ydiff1--; }
temp = (ydiff1==1?"":(ydiff1==100?ydiff1+" year and ":ydiff1 + " a&ntilde;os y "));
temp += (mdiff1==0?"0 mes ":(mdiff1==1?mdiff1+" month, and ":mdiff1+" meses "));
temp += (dayst==0?"un mes":( "  " ));
return temp;
}
</script>
          <script language="JavaScript">
document.write(" ");
document.write(DateEstablished(14,07,16));
document.write("</font>");
</script>
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Samuel
Val: 5
Ha disminuido su posición en 19 puestos en JavaScript (en relación al último mes)
Gráfica de JavaScript

Error fecha con javascript

Publicado por Samuel (4 intervenciones) el 17/08/2017 17:38:18
Hola:

Ten en cuenta que cuando llamas a la función DateEstablished, le estás pasando el mes 14 (que no existe), el día 7, y el año 16 (no 2016). Intercambia el mes y el día y ponle 2016 a ver.

Un saludo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Error fecha con javascript

Publicado por Gabriel (2 intervenciones) el 18/08/2017 05:22:50
Primero que nada gracias por su respuesta.
Intente ponerle 2016 y me da error de la funcion.
Si pongo 14,07,2016 me devuelve 0 años y 5 meses , y si le pongo 2016,07,14 me devuelve -65 años y 7 meses
No encuentro donde esta el error en la funcion
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar