9
respuestas

Duda acerca de como JS evalúa la operación antes de pasar por los ()

Acerca de:

"Es bueno recordar que JavaScript primero evalúa la operación (suma) antes de pasar para los () de la instrucción."

No tengo muy claro lo que esto significa. Pensé que sería lo mismo evaluar la operación, es decir la suma, que pasar lor los (), porque realmente lo que hay dentro de los () es la suma.

Alguien me podría aclarar esto por favor?

Gracias

9 respuestas

Tengo la misma duda.

en la actividad de: ¿cual es el resultado? para que te salga 182 está mal planteada. segun entiendo, falta un paréntesis final y el punto y coma. ); crei q se trataba de una trampa pero esa era la respuesta. mas si lo haces asi obviamente no funciona por faltar: ); no sé si es descuido o es asi. si alguien me explica lo agradecería.

Ingrese aquí la descripción de esta imagen para ayudar con la accesibilidad

Hola Roxana, no entendí muy bien tu pregunta, si puedes poner el segmento de código en el que tienes duda es más sencillo comprender.

A lo que entiendo cuando tienes: document.write(20+3) Java script lo detecta como valor númerico y realiza la operación númerica. Si pones el argumento entre comillas: document.write("20+3") Es un tipo de variable de string por lo cual no hace la operación y lo imprime tal cual.

Oscar Daniel si aparece completo con los parentesís y el punto y coma, probablemente sea porque lo abres desde el celular, esta es la respuesta correcta:

En lo que respecta a esta duda : "Es bueno recordar que JavaScript primero evalúa la operación (suma) antes de pasar para los () de la instrucción." Para entender esto es necesario saber la priorización en las operaciones (Suma, Resta, Multiplicación y División ) ** La multiplicación y la división primero, de izquierda a derecha, antes de hacer la suma y la resta** El ejemplo mostrado era algo así 10+15+6/3.Si hacemos esto con la ley de priorización el resultado sera 27. Pero como lo que se buscaba en el ejercicio era sacar el promedio y la formula es sumando un grupo de números y dividiendo a continuación por el recuento de dichos números, se tenia que obligar al código que primero hiciera la suma y la forma de hacerlo es "agrupando" por lo cual nos apoyamos en los "()", esto le dio la instrucción al código para que primero hiciera la suma y luego hiciera la división.

Espero haberme explicado, saludos.

Gracias a todos.

Gracias Carlos. Si te fijas, este es el ejemplo que colocaron. Como tal solo es una suma. Entonces no se como eso aplica a este ejemplo. Me podrías aclarar eso un poco, porfa? Muchas gracias.

Ingrese aquí la descripción de esta imagen para ayudar con la accesibilidad

Roxana, en este caso indica que primero se evalúa la suma puesto que el signo "+" se emplea para operación y para concatenar, entonces el codigo primero se tiene que asegurar que no es una suma, y antes de pasar a los "()" indica que posterior a eso revisara la agrupación o en su caso lo que se encuentre dentro de ellos.

Hola Roxana, no entiendo muy bien tu duda pero lanzo lo que entiendo y ya tu me diras si esta bien o mal. Por el ejemplo que colocas se puede decir que no es una suma, es una concatenacion de cadenas, ya que tiene "18" + "2" entonces esto como resultado dsria "182" ya que son de tipo String, si fuese una suma seria 18+2 y daría lo de siempre 20. si te refieres a lo de document.write() que primero resuelve la operación dentro de los corchetes y despues imprime, se puede decir que es lo normal ya que prioriza la operacion que hay dentro de el para que despues de una respuesta en base a eso, esto se debe al orden que tienen las funciones es decir, es como si leyeras un libro, primero entiendes el primer renglon, despues el segundo, el tercero y asi sucesivamente, es lo mismo con la programacion que primero lee una linea, despues otra y asi, todo eso en el orden que esten escritas, es por ello que funciona de esa forma. espero haberte ayudado, sino es asi estare al pendiente de la pregunta, un saludo

Ohhh! Ya lo entendí :) Muchas gracias Carlos y Omar! :D