JavaScript - Solicitud de aclaración respecto del manejo del DOM

 
Vista:

Solicitud de aclaración respecto del manejo del DOM

Publicado por Pedro Caro (4 intervenciones) el 09/08/2015 03:45:00
Hola, mi duda es la siguiente, que diferencia existe entre referirme a un objeto del DOM mediante la sentencia

document.getElementById('nombre').<propiedad>

a referirme simplemente así

nombre.<propiedad>

Aclaro lo siguiente, no utilizo ningún frame javascript y por lo tanto no espero recomendaciones de mejor utilizar uno u otro, solo deseo aclarar esta duda ya que utilizo uno u otra forma indistintamente y funciona aparentemente sin diferencia alguna.

Agradezco sus comentarios
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 Vainas
Val: 95
Ha mantenido su posición en JavaScript (en relación al último mes)
Gráfica de JavaScript

Solicitud de aclaración respecto del manejo del DOM

Publicado por Vainas (258 intervenciones) el 09/08/2015 10:54:56
Buenas:

Que pregunta tan interesante has hecho. Primero que nada decirte que no conocia que se pudiera accerder por el valor del id (y posiblemente por el de la clase tambien se podra. Actualizo: esto ultimo no es asi). Asi que he tenido que buscar por que podria usarse uno y no la function. te resumo lo que he conseguido aqui: http://stackoverflow.com/a/14478178

Acceder directamente al elemento te puede dar un error si el elemento no existe y sin embargo con "getElementById" obtienes un valor NULL. Imagino que eso de que te de un error significa que se detiene la ejecucion del codigo y no se procesa nada mas. Usando la funcion simplemente tienes un NULL dentro de la variable, cosa que da igual por que la gente intenta hacer cosas como document.getElementById('nombre').<propiedad> y salta igual el error ya que el objeto NULL no tiene esa propiedad.

Otra cosa que se comenta en el link es que no puedes acceder a elementos con id divididos con barras algo asi. id="nombre-elemento" ya que no puede hacer esto:

1
nombre-elemento.<propiedad>

pero sin embargo al estar todas las variables bajo window podrias hacerlo asi:

1
window['nombre-elemento'].<propiedad>

Desconozco ahora mismo si esto es parte del estandar de ECMAScript o va aparte.

Espero que te sirva.

Saludos.
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