"¡Hola, amigo!"

"¡Hola, Bilaabo!"

"Me alegro de verte. Hoy tenemos una lección pequeña pero muy informativa. Hoy te hablaré sobre el lenguaje JavaScript".

JavaScript - 1

"¿Un nuevo idioma? Qué interesante..."

"JavaScript es actualmente popular gracias a Internet. El hecho es que es el único lenguaje que todos los navegadores pueden ejecutar. Si desea agregar animación o lógica a su página web, puede hacerlo con JavaScript".

"¿Es cierto que JavaScript es el lenguaje más popular?"

"Sí, pero sería más exacto decir que es el 'segundo idioma' más popular. Los programadores de C++, Java, C# y PHP necesitan escribir pequeños scripts en JavaScript para animar sus páginas web. Pero, mucha menos gente solo escribir código en JavaScript".

"¿Por qué se llama JavaScript? Suena casi como Java".

"En realidad, inicialmente, se llamaba LiveScript, pero cuando Java comenzó a ser más popular, pasó a llamarse JavaScript".

"Java y JavaScript son dos lenguajes completamente diferentes. No los confunda".

"A diferencia de Java, JavaScript no tiene clases y no admite escritura estática, subprocesos múltiples y mucho más. Java es como un gran conjunto de herramientas de construcción, mientras que JavaScript es más como una navaja suiza. JavaScript está diseñado para resolver tareas pequeñas, pero Java es para resolver tareas grandes y muy grandes".

"Aquí hay algunos datos sobre JavaScript:"

"El primer hecho es que JavaScript tiene funciones, pero no clases"

"Simplemente escribe programas usando varias funciones y eso es todo. Por ejemplo:"

JavaScript
function min(a, b)
{
 return a
}
Java
public static int min(int a, int b)
{
return a
}

"Las nuevas funciones se declaran usando «función <nombre>».

"Otro ejemplo:"

JavaScript
function min(ab)
{
 return a < b ? ab;
}

function main()
{
 var s = 3;
 var t = 5;
 var min = min(s, t);
}
Java
public static int min(int a, int b)
{
 return a < b ? ab;
}

public static void main()
{
 int s = 3;
 int t = 5;
 int min = min(s,t);
}

"El segundo hecho es que JavaScript tiene variables, pero esas variables no tienen tipos"

"JavaScript es un lenguaje de tipo dinámico. Esto significa que las variables en realidad no tienen tipos. A cualquier variable se le puede asignar un valor de cualquier tipo (los valores tienen tipos). Por ejemplo:"

JavaScript
function main()
{
 var s = "Bender";
 var k = 1;
 var n = s.length;
}
Java
public static void main()
{
 String s ="Bender";
 int k = 1;
 int n = s.length();
}

"Pero la escritura dinámica aumenta el riesgo de errores de tiempo de ejecución:"

JavaScript
function main()
{
 var s = "Bender";
 var k = 1;
 var n = k.length;
}
Java
public static void main()
{
 String s ="Bender";
 int k = 1;
 int n = k.length();
}

"En el ejemplo anterior, usamos la variable k (un número entero) en lugar de s (una cadena). En Java, el error se detectaría en tiempo de compilación, pero en JavaScript, no se detectará hasta más tarde cuando el código Esta corriendo."

"Si desea declarar una variable en JavaScript, debe escribir "var <nombre>". No hay tipos de variables, y no hay tipos para métodos/funciones o sus argumentos".

"JavaScript tiene muy pocas reglas estrictas y mucha anarquía".

"Puede declarar una función con 5 argumentos y llamarla con dos; el resto simplemente será nulo. Puede declarar una función con dos argumentos y pasar cinco cuando la llame. Tres simplemente se desecharán. Hay un control mínimo sobre errores, errores tipográficos y cambios".

"El tercer hecho es que JavaScript tiene instrucciones if, for y while"

"JavaScript tiene si, para y mientras. Esta es una gran noticia. Mire estos ejemplos:"

JavaScript
function main()
{
 var s = "Bender";

 var result = "";

 for(var i = 0; i < s.length; i++)
 {
  result += s[i] + "";
 }
 if(result.length > 10)
 {
  alert (result);
 }
 else
 {
  while(result.length <= 10)
  {
   result += " ";
  }
  alert(result);
 }
}
Java
public static void main()
{
 String s = "Bender";
 char[] s2 = s.toCharArray();
 String result = "";

 for(int i = 0; i < s.length(); i++)
 {
  result += s2[i] + "";
 }
 if(result.length() > 10)
 {
  System.out.println(result);
 }
 else
 {
  while (result.length() <= 10)
  {
   result += " ";
  }
  System.out.println(result);
 }
}

"Son bastante similares. Creo que podría descubrir cómo funciona el código escrito en JavaScript".

"Tu optimismo es bueno".

"El cuarto hecho es que JavaScript admite bloques try-catch-finally"

" JavaScript tiene excepciones ( Error ) y eso es bueno. No tiene excepciones verificadas , solo excepciones no verificadas similares a RuntimeException . La construcción try-catch-finally funciona igual que en Java. Por ejemplo:"

JavaScript
function main()
{
 try
 {
  var s = null;
  var n = s.length;
 }
 catch(e)
 {
  alert(e);
 }
}
Java
public static void main()
{
 try
 {
  String s = null;
  int n = s.length();
 }
 catch(Exception e)
 {
  System.out.println(e);
 }
}

"Cuando intentamos obtener la longitud de String, se lanzará una excepción ya que la variable es nula".

"El quinto hecho es que JavaScript tiene matrices"

"Buenas noticias: JavaScript tiene arreglos. Malas noticias: no hay listas ni colecciones".

"Otra buena noticia es que las matrices pueden expandirse dinámicamente cuando se agregan nuevos elementos y disminuir a medida que se eliminan elementos. Es más como un híbrido entre una matriz y una lista " .

Por ejemplo:

JavaScript
function main()
{
 var m = [1, 3, 18, 45, 'c', "roma", null];
 alert(m.length); // 7

 m.push("end");
 alert(m.length); // 8

 for (var i = 0; i < m.length; i++)
 {
  alert(m[i]);
 }
}
Java
public static void main()
{
 List m = Arrays.asList(1, 3, 18, 45,'c', "roma", null);
 System.out.println(m.size()); // 7

 m.add("end");
 System.out.println(m.size()); // 8

 for (int i = 0; i < m.size(); i++)
 {
  System.out.println(m.get(i));
 }
}

"¿Qué son esos corchetes en la declaración de la matriz?"

"Eso es exactamente lo que es una declaración de matriz. Para declarar una matriz, debe escribir corchetes. Luego, enumera los elementos de la matriz entre los corchetes. Declara una matriz vacía simplemente con un par de corchetes".

Ejemplo
var m = [];

"El sexto hecho es que JavaScript tiene objetos"

"JavaScript tiene objetos. De hecho, todo en JavaScript es un objeto, incluso los tipos primitivos. Cada objeto se representa como un conjunto de pares clave-valor. En términos generales, cada objeto de JavaScript es equivalente a un HashMap en Java. Aquí hay un ejemplo de una declaración de objeto:"

JavaScript
function main()
{
 var m = {
  first_name : "Bill",
  last_name: "Gates",
  age: 54,
  weight: 67,
 children: ["Emma", "Catrin"],
 wife: {
  first_name : "Melinda",
  last_name: "Gates",
  age: 45,
  }
};

 alert(m.first_name); // Bill
 alert(m.age); // 54
 alert(m.wife.first_name); // Melinda

 m.age = 45;
 m.age++;
 m["first_name"] = "Stive";
 m["wife"] = null;
Java
public static void main()
{
 HashMap m = new HashMap();
 m.put("first_name", "Bill");
 m.put("last_name", "Gates");
 m.put("age", 54);
 m.put("weight", 67);

 String[] children = {"Emma", "Catrin"};
 m.put("children", children);

 HashMap wife = new HashMap();
 wife.put("first_name", "Melinda");
 wife.put("last_name", "Gates");
 wife.put("age", 45);
 m.put("wife", wife);

 System.out.println(m.get("first_name"));
 System.out.println(m.get("age"));

 HashMap w = ((HashMap)m.get("wife"));
 System.out.println(w.get("first_name")));

 m.put("age", 45);
 m.put("age", ((Integer)m.get("age")) + 1);
 m.put("first_name", "Stive");
 m.put("wife", null);

"Para crear un nuevo objeto, solo tienes que escribir dos llaves: «{}»."

"Dentro de las llaves, puede especificar los datos del objeto en el siguiente formato: «clave, dos puntos, valor, coma»."

"Se puede acceder a los campos de objeto de dos maneras:"

Declaraciones equivalentes
m.age = 45;
m[“age”] = 45;

"Si el campo especificado no existe, entonces se crea".

"Mi válvula de alivio está sobrecargada o algo así. Creo que deberíamos tomar un descanso".

"El séptimo hecho es que JavaScript fue creado para funcionar dentro de las páginas web".