¿Necesita una rápida depuración, por favor

  • mindfullsilence
  • Professor
  • Professor
  • Avatar de Usuario
  • Registrado: Ago 04, 2008
  • Mensajes: 846
  • Status: Offline

Nota Enero 21st, 2011, 4:03 pm

Alguien sabe por qué esto no es nada para salir? Sistema muestra una vez, que me hace pensar en su bucle while.
JAVASCRIPT Código: [ Select ]
function getNames()
{
var names=new Array(4);
var i = 0
var name = prompt("Please enter a name:","");
while(names[4] = '') {
names[i] = name;
var list = document.createElement('<li>'+names[i]+'<li>')
document.getElementById('nameList').appendChild(list)
i=i++
}
}
 
  1. function getNames()
  2. {
  3. var names=new Array(4);
  4. var i = 0
  5. var name = prompt("Please enter a name:","");
  6. while(names[4] = '') {
  7. names[i] = name;
  8. var list = document.createElement('<li>'+names[i]+'<li>')
  9. document.getElementById('nameList').appendChild(list)
  10. i=i++
  11. }
  12. }
  13.  

Estoy llamando a la función a través de un proceso de carga del cuerpo.
Use your words like arrows to shoot toward your goal.
  • Anonymous
  • Bot
  • No Avatar
  • Registrado: 25 Feb 2008
  • Mensajes: ?
  • Loc: Ozzuland
  • Status: Online

Nota Enero 21st, 2011, 4:03 pm

  • mindfullsilence
  • Professor
  • Professor
  • Avatar de Usuario
  • Registrado: Ago 04, 2008
  • Mensajes: 846
  • Status: Offline

Nota Enero 21st, 2011, 4:19 pm

No importa, lo consiguió.

JAVASCRIPT Código: [ Select ]
function getNames()
{
   // set up the array
var names=new Array(3);
i=0
//loop will stop at 4 names
while(i < 4) {
 
var name = prompt("Please enter a name:","");
names[i] = name;
var list = document.createElement('li');
document.getElementById('nameList').appendChild(list).innerHTML = names[i];
i++
}
}
 
  1. function getNames()
  2. {
  3.    // set up the array
  4. var names=new Array(3);
  5. i=0
  6. //loop will stop at 4 names
  7. while(i < 4) {
  8.  
  9. var name = prompt("Please enter a name:","");
  10. names[i] = name;
  11. var list = document.createElement('li');
  12. document.getElementById('nameList').appendChild(list).innerHTML = names[i];
  13. i++
  14. }
  15. }
  16.  
Use your words like arrows to shoot toward your goal.
  • Satwant
  • Graduate
  • Graduate
  • Avatar de Usuario
  • Registrado: Dic 27, 2010
  • Mensajes: 126
  • Loc: Bangalore
  • Status: Offline

Nota Enero 21st, 2011, 10:29 pm

Por lo tanto, es sin terminar de bucle? :)
  • mindfullsilence
  • Professor
  • Professor
  • Avatar de Usuario
  • Registrado: Ago 04, 2008
  • Mensajes: 846
  • Status: Offline

Nota Enero 24th, 2011, 11:39 pm

No, termina con un paréntesis de cierre, el problema estaba en la línea 8 en el que estaba usando la sintaxis incorrecta para el "createElement" método.
Use your words like arrows to shoot toward your goal.
  • joebert
  • Sledgehammer
  • Genius
  • No Avatar
  • Registrado: Feb 10, 2004
  • Mensajes: 13455
  • Loc: Florida
  • Status: Offline

Nota Enero 25th, 2011, 5:51 pm

Algo sobre el encadenamiento de appendChild como que me hace temblar. No sé por qué, pero cambiar el alcance de una cadena de comando como que sólo parece mal a mí. conveniente, tal vez, complicado y una pesadilla para la depuración, probablemente. :)
Strong with this one, the sudo is.
  • mindfullsilence
  • Professor
  • Professor
  • Avatar de Usuario
  • Registrado: Ago 04, 2008
  • Mensajes: 846
  • Status: Offline

Nota Enero 25th, 2011, 11:22 pm

Honestamente estoy ahora tomando mi curso de javascript para Im seguro de enfermedad tiene más preguntas en las próximas semanas, y mi js será horrible aspecto. ¿Podría explicar por qué encadenamiento el método appendChild es algo malo, y lo que quieres decir con cambiar el contenido?
Use your words like arrows to shoot toward your goal.
  • joebert
  • Sledgehammer
  • Genius
  • No Avatar
  • Registrado: Feb 10, 2004
  • Mensajes: 13455
  • Loc: Florida
  • Status: Offline

Nota Enero 26th, 2011, 7:38 pm

"GetElementById" le da un toque a lo que el siguiente elemento de referencia en la cadena ser, pero appendChild es ambiguo. En caso de una referencia al elemento de un nodo se adjuntó al ser devueltos, o una referencia al nodo que se adjunta?
Strong with this one, the sudo is.
  • mindfullsilence
  • Professor
  • Professor
  • Avatar de Usuario
  • Registrado: Ago 04, 2008
  • Mensajes: 846
  • Status: Offline

Nota Enero 26th, 2011, 7:53 pm

Creo que entiendo tu punto. ¿Le importaría compartir una mejor solución para el código anterior para futuras referencias?
Use your words like arrows to shoot toward your goal.
  • joebert
  • Sledgehammer
  • Genius
  • No Avatar
  • Registrado: Feb 10, 2004
  • Mensajes: 13455
  • Loc: Florida
  • Status: Offline

Nota Enero 26th, 2011, 9:50 pm

Me gustaría hacer algo como esto.

JAVASCRIPT Código: [ Select ]
function getNames()
{
   var names = [];
   while(names.length != 4)
   {
      names = prompt('Enter 4 names, separated by commas:').split(/\s*,\s*/);
   }
 
   document.getElementById('nameList').innerHTML = document.getElementById('nameList').innerHTML
      + '<li>'
      + names.join('</li><li>')
      + '</li>';
}
  1. function getNames()
  2. {
  3.    var names = [];
  4.    while(names.length != 4)
  5.    {
  6.       names = prompt('Enter 4 names, separated by commas:').split(/\s*,\s*/);
  7.    }
  8.  
  9.    document.getElementById('nameList').innerHTML = document.getElementById('nameList').innerHTML
  10.       + '<li>'
  11.       + names.join('</li><li>')
  12.       + '</li>';
  13. }
Strong with this one, the sudo is.
  • mindfullsilence
  • Professor
  • Professor
  • Avatar de Usuario
  • Registrado: Ago 04, 2008
  • Mensajes: 846
  • Status: Offline

Nota Enero 26th, 2011, 10:04 pm

Casi todos los que entiendo...a excepción de una sola pieza:

JAVASCRIPT Código: [ Select ]
.split(/\s*,\s*/)
 
  1. .split(/\s*,\s*/)
  2.  


Supongo que la división es de dimmensioning una matriz utilizando la coma como separador para cada plazo. Si eso es correcto o no...¿qué es todo el "* / \ s, \ s * /" Mumbo Jumbo?
Use your words like arrows to shoot toward your goal.
  • joebert
  • Sledgehammer
  • Genius
  • No Avatar
  • Registrado: Feb 10, 2004
  • Mensajes: 13455
  • Loc: Florida
  • Status: Offline

Nota Enero 26th, 2011, 10:11 pm

división es un método de cadena que acepte una cadena o una expresión regular como delimitador.

En este caso, la división de la cadena de regresar de sistema () usando una coma, opcionalmente, cualquier cantidad de espacios en blanco a ambos lados de la coma para dar cuenta de las personas que, naturalmente, poner espacios antes o después de las comas.
Strong with this one, the sudo is.
  • mindfullsilence
  • Professor
  • Professor
  • Avatar de Usuario
  • Registrado: Ago 04, 2008
  • Mensajes: 846
  • Status: Offline

Nota Enero 26th, 2011, 10:24 pm

bien, así que esto es lo que encuentro estoy, sin saber nada acerca de las expresiones regulares:
"\ S" es la expresión regular para el espacio
"*" Significa "cualquier cantidad de"

Eso está bien?

Además, el "/" se utiliza para escapar, ¿por qué se lo ponga en diferentes posiciones para cada uno "\ s *"

Eh, su tan raro que me suena como un novato, te lo prometo, pero estas son cosas que yo sé que no se aprenden en clase...mi instructor de la universidad no es muy explicativo.
Use your words like arrows to shoot toward your goal.
  • joebert
  • Sledgehammer
  • Genius
  • No Avatar
  • Registrado: Feb 10, 2004
  • Mensajes: 13455
  • Loc: Florida
  • Status: Offline

Nota Enero 26th, 2011, 11:23 pm

\ S es cuál es llamado un "carácter meta". Básicamente lo que representa un grupo de personajes. Hay más personajes meta, por ejemplo, \ d que significa que cualquier carácter numérico, 0-9. \ S significa "blanco", no sólo el carácter de espacio, pero las pestañas, saltos de línea, etc, tiendo a usar \ s en lugar de un espacio literal en mis expresiones regulares porque theyre más fácil de leer.

Sí, el asterisco "*" en este caso, cualquier cantidad de, o más comúnmente "cero o más veces". ¿Cuál es su llamado cuantificador. Otros cuantificadores son el signo más que significa "una o más veces", el signo de interrogación que significa "cero o una vez", y una gama que se especifica en los frenos, "{2,7}", que en este ejemplo sería decir " dos a siete veces ".

El "/" (barra diagonal) no se utiliza para escapar, la "\" (barra diagonal hacia atrás) es. La barra hacia atrás también se usa para marcar meta-caracteres. Las barras diagonales que se ven son "delimitadores de patrón". delimitadores modelo marca el principio y el final del patrón.
Strong with this one, the sudo is.
  • mindfullsilence
  • Professor
  • Professor
  • Avatar de Usuario
  • Registrado: Ago 04, 2008
  • Mensajes: 846
  • Status: Offline

Nota Enero 27th, 2011, 10:02 am

Gracias por tomarse el tiempo para aclarar que hasta JB. Creo que Ive consiguió mi terraplén de la nueva información para el día, pero estoy seguro therell ser más preguntas que vienen después en el camino.
Use your words like arrows to shoot toward your goal.

Publicar Información

  • Total de mensajes en este tema: 14 mensajes
  • Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 82 invitados
  • No puede abrir nuevos temas en este Foro
  • No puede responder a temas en este Foro
  • No puede editar sus mensajes en este Foro
  • No puede borrar sus mensajes en este Foro
  • No puede enviar adjuntos en este Foro
 
 

© 2011 Unmelted, LLC. Ozzu® es una marca registrada de Unmelted, LLC