(27-03-2014 23:47)Ignis link No entiendo un carajo 
Se supone que tienes un cuadro de texto donde meter informacion y si metes "screen" deberia hacer algo y no lo hace, ¿es eso?
Tengo que introducir un objeto de javascript mediante prompt (la cajita que sale como ventana donde metes lo que quieres), eso se guarda en una variable y el resto del código hace que saque todas las propiedades que tiene ese objeto, y lo pone en una tabla.
Vale, el problema está en que si hago:
Código:
var obj = prompt(); //Aquí se guardará lo que metas tú en la cajita de texto
Me lo guarda como un string y el programa lo trata como un string, en vez de como objeto.
Si yo hago esto:
Código:
<body>
<table id="tabla">
<tr><th>Valor</th><th>Propiedad</th></tr>
<script type="text/javascript">
var obj = screen;
var i, tabla = document.getElementById("tabla");
for (i in obj) {
tabla.innerHTML+="<tr><td>" + i + "</td><td> = " + obj[i] + "</td></tr>";
}
</script>
</body>
Sí me lo trata como un objeto y evidentemente me muestra todas las propiedades de ese objeto y sale en la tabla, así:
Código:
Valor Propiedad
mozLockOrientation = function mozLockOrientation() { [native code] }
mozUnlockOrientation = function mozUnlockOrientation() { [native code] }
availWidth = 1366
availHeight = 738
width = 1366
height = 768
colorDepth = 24
pixelDepth = 24
top = 0
left = 0
availTop = 0
availLeft = 0
mozOrientation = landscape-primary
onmozorientationchange = null
addEventListener = function addEventListener() { [native code] }
removeEventListener = function removeEventListener() { [native code] }
dispatchEvent = function dispatchEvent() { [native code] }
Pero si lo hago como está puesto arriba, con el prompt, sale esto:
Código:
Valor Propiedad
0 = s
1 = c
2 = r
3 = e
4 = e
5 = n
¿Vale? Es decir, si lo introduzco por pantalla, me lo guarda como string y yo necesito que lo trate como objeto, ¿cómo puedo hacerlo?