Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Solucionado (ver solución)
Solucionado
(ver solución)
5
respuestas

Duda sobre los ( )

Entiendo perfectamente lo de las comillas, estas se usan en JS pero no en HTLM ahora mi duda es con respecto a los ( ) utilizados para la instrucción de alert el texto debía estar entre paréntesis y comillas (" ") mi pregunta es los ( ) se utilizara solo para alert o para todas las instrucciones o van a depender de la instrucción de JS?

5 respuestas

Hola Yaneth los paréntesis en JavaScript se unan en todos los métodos definidos en el lenguaje por ejemplo prompt(), reload(), setTimeout(). Un método es una función la cual es propiedad de un Objeto. Dentro de los paréntesis se pueden definir un bloque de instrucciones o se pueden pasar diferentes parámetros.

Método

var obj = {
  a : "foo",
  b(){ return this.a; }
};
console.log(obj.b()); // "foo"

Función

function square(number) {
  return number * number;
}

Saludos.

Sin los paréntesis no funcionan las instrucciones???

Otra pregunta: En JavaScrip las comillas son dobles o sencillas????

Oscar Miguel.

Claro que no ejecutara una función si no le agregamos los paréntesis, nos arrojara un error de SyntaxError. Y si llamamos una función sin sus paréntesis no ejecutara nada. ejemplo:

// Syntax Error
function hola{ 
    console.log("hola")
}
// No ejecuta la función
hola;

el código correcto seria:

function hola() {
    console.log("hola")
}

hola();

Y en javascript se pueden usar las comillas dobles o sencillas como el mismo tipo de par '' o también "".

solución!

Los paréntesis en Javascript son lo que se llama "token" y su significado depende del entorno donde se utilicen. Algunos ejemplos simples:

// para anular la jerarquía en operaciones aritméticas: 
( 1 + 3 ) * 5 // 20
1 + 3 * 5     // 16

// para "invocar" (llamarlas y hacer trabajar) funciones:
alert( );        // alert es una función, en alguna parte del código interno de Javascript hay una definición similar a:

function alert() { 
    // levanta un popup y si lo hay,
    // muestra el contenido que el 
    // programador envíe como parámetro
}

// para pasar los parámetros a una función: 
alert("Esto es el parámetro de la función");

Por ahora me limité a ejemplos similares a cosas vistas en el curso pero también se utilizan para otras muchas funciones, (funciones IIFE, evaluaciones lógicas, por ejemplo las comunes por si quieres investigar) pero en general, igual que con el lenguaje natural, algunas palabras tienen más de una función según el contexto donde se utilizan y solo puedes aprender a través de la práctica y memorización (no hay "una sola" regla fija sobre el uso de este token). Y aunque no parezca una palabra, para Javascript los ( ) son algo muy similar a una "palabra" (token) de nuestro lenguaje, y cuando la encuentra, procede a evaluar el contexto donde está para saber qué hacer.

A la pregunta de Oscar: en JS puedes usar comillas dobles y simples indistintamente (eligiendo el sabor, no puedes comenzar con una y cerrar con la otra) pero una convención común es usar simples en JS puro y dobles en HTML para poder crear strings que anidan ambas sin tener que escapar caracteres. Y de nuevo, si la instrucción es una función, su gramática requiere el uso de paréntesis tanto cuando la defines como cuando la invocas. Hay excepciones como los handlers y callbacks que no requieren paréntesis para ser ejecutados o las funciones arrow que no requieren paréntesis al tener un solo parámetro, pero insisto, depende del contexto, en general la regla es que defines e invocas a las funciones utilizando nombre (). La gran diferencia es que la definición incluye la palabra reservada function al principio y luego un "cuerpo de la función entre dos { // cuerpo de la función } mientras que la invocación solo requiere el nombre y los ()

// definición de funcion de nombre "miFuncion": 
function miFuncion () { 
    /* lo que sea que hace*/ 
}

// invocación de funcion de nombre "miFuncion": 
miFuncion();

gracias por la info