Respuestas a las preguntas

Wednesday, April 05, 2006

Bug en el parseInt de JavaScript ??? No, bug en el programador.

Pues aquí estamos de nuevo con otra pregunta (Agradecimiento especial a el "Pollo" por sus aportaciones a este espacio) que nos hizo el famosísimo "pollo", y la historia es la siguiente:

Pollo: oye, ayer le encontre un bug al javascript
yo :aja
si como no (nota el tono de sarcasmo)
en que parte
???
Pollo: en el parseInt
yo:que tiene
Pollo: checa
yo: a ver
Pollo: si pongo var d[0] = "060406"
var d[1] = "060408"
parseInt(d[0].substring(4,6)) me da 6,
pero si pongo
parseInt(date[1].substring(4,6)) me da 0

yo: aja, y luego ???
Pollo: pues que parseInt(date[1].substring(4,6)) esto no es 0
debe de ser 8
yo: a ver, dejame probarlo (se nota el nerviosismo, porque parece ser verdad)
Pollo: solo es con el número 8
yo: Ya lo revise
y es un bug llamado "programmer error, replace programmer and press any key to continue"
jajajajajajajaja (risa burlona)
resulta que no sabes usar la función parseInt
sintáxis de la función

parseInt(string[, base])
string : la cadena a convertir a entero
base: la base del número
(esto es base 10 decimal, base 8 octal, 2 binario, etc)

si tu número a convertir ( cadena ) empieza con cero, lo toma como un número octal
por eso te da 0, y pasa con el 08 y el 09.
asi que usa
parseInt(d[1].substring(4,6),10)
asi y te regresa el 8
Pollo: y a quien se le ocurrio esa #$%&/!?
yo: es sintáxis del lenguaje de programación
Pollo: o sea, ya tuve que hacer todo un desmadre para pasarme por el arco del triunfo ese error
yo:no es culpa de nadie más, solo tu debiste revisar la sintáxis y ver como funcionaba y que no es error
prueba con el 10
y veras
Pollo: odio todo lo que no sea de microsoft
maldito javascript
Pollo: cual es la base mas comun la 10 o la octal
yo: la base más común es la 10
Pollo: tonz?
por q chin"#$"s hace la ma"#$&da de agarrarlo como octal si no se lo pido?
yo: pero si tu escribes un número 08 en lugar de 8 se piensa que es octal
Pollo: nel
yo: que tu no sepas binario, octal decimal y hexadecimal
Pollo:eso lo piensa el wey q hizo javascript y tu
yo:es tu pe"#%$o
jajajajajajajajaja
no en serio
Pollo: bueno, todos los dias se aprende algo nuevo
yo: así es
Pollo:ni ma"#res es una ma"#$%da q me quito como 5 horas
yo:para que no me preguntas antes
ve me tarde 10 minutos en decirtelo
Pollo:por q salio ayer a las 8 de la noche
y ya no estabas
pero ahora tengo otra jajajaja
oDate = Thu Apr 6 00:00:00 CST 2006
oDate.getYear() = 2006
ahi vamos bien cierto?
yo:sip
Pollo: oDate.getMonth() Me regresa 3
q? ahora resulta q si no le paso la fecha en ruso me va a decir q abril es el mes 3?
y peor aun
oDate.getDay() me regresa 4
ademas de todo debo decirle q el año antepasado fue biciesto pa q me diga q el 6 de abril es 6 de abril y no 4?
yo:pues si es 4
Pollo:el jueves si
pero y el mes?
yo:tons
Pollo: tambien abril es el 3?
o q
yo: jejejejejeje (risa burlona)
sip
enero 0
febrero 1
marzo 2
abril 3
... diciembre 11

Pollo: q ma#$%da, o sea, cuando quiere maneja base 0 y cuando no base 1? se parece a visual 6
yo: creo que tienes un problema de indices
Pollo: ahora
como es posible q en una funcion, el getDay() me devuelva el dia del mes, y en otra el dia de la semana
yo: ??? como
Pollo: mira
... no ya olvidalo
ya cai
soy un wey
yo:jajajajajajajajajajajajajajajajajajajajaja
Pollo: solo dime tonz como chingaos le hago pa obtener el 6 y no el 4
yo:el 6 ????
del año ???
ó del día ????
Pollo: no, del dia
del 6 de abril
no hay algo asi como un getDiaDelMes()
no encuentro esa ma%&re

getDate Method

getDay Method

getFullYear Method

getHours Method

getMilliseconds Method

getMinutes Method

getMonth Method

getSeconds Method

getTime Method

getTimezoneOffset Method

getUTCDate Method

getUTCDay Method

getUTCFullYear Method

getUTCHours Method

getUTCMilliseconds Method

getUTCMinutes Method

getUTCMonth Method

getUTCSeconds Method

getVarDate Method

getYear Method

solo hay eso
yo: asi es
Pollo: y luego?, ahora resulta q eso en javascript no existe? el wey q lo hizo decidio q no era necesario?
yo: usa fecha.getDate()
que es el dia del mes
heeeeeeey
getDate() es la función !!!!!
Pollo: getDate
o sea
getDate = dame fecha
no dame el dia del mes
q ma ="# do ta
yo: jajajajaja
Pollo: no puede ser
de verdad q no
ya jalo
ya se ya se ya se
has contribuido tanto con este proyecto
q en agradecimiento, te dejare ser tester como ves?
...
Pero esa es otra historia que no tiene que ver con preguntas y respuestas ...

Así fue esta pequeña pregunta.
Saludos y hasta la próxima.