2.1 Variáveis ​​e dor

Vamos começar com o mais interessante. JavaScript tem variáveis, mas essas variáveis ​​não têm um tipo. Qualquer variável pode receber absolutamente qualquer valor. Parece inócuo ou mesmo útil até que você precise dos tipos.

A palavra-chave é usada para declarar uma variável var:

var name;
var name = value;

Exemplos de como trabalhar com variáveis ​​em JavaScript:

var a = 10, b = 20;
var c = a*a + b*b;

var s = "Diagonal equals:";
console.log( s + Math.sqrt(c));

Ótimo e claro código, não é? Talvez esta seja a última vez em sua vida em que você vê um código JavaScript bonito e compreensível. Relembre este momento :)

2.2 Digitando em JavaScript

Conforme mencionado acima, as variáveis ​​na linguagem JavaScript não possuem um tipo. Mas os valores das variáveis ​​têm tipos. Aqui estão os 5 tipos mais comuns em JavaScript:

# Tipo Exemplo Descrição
1 número
var pi = 3.14;
Contém qualquer número
2 Corda
var s = "Hello!";
Contém uma string
3 boleano
var result = true;
Contém verdadeiro ou falso
4 variedade
var arr = [1, 2, 3, 4, 5];
Contém uma matriz de elementos
5 Data
var current = new Date();
Contém data
6 Objeto
var o = {
   width: 100,
   height: 200
}
Contém um objeto que consiste em pares de chave e valor. Algo semelhante ao HashMap em Java
7 função
function sqr(var x) {
   return x*x;
}
Função

A palavra-chave typeof é usada para determinar o tipo de um objeto, por exemplo:

var s = "134";
var x = (typeof s == "String") ? s*1 : s;

2.3 Funções e retornos

E, claro, o JavaScript tem funções. Não há classes, então as funções podem ser declaradas em qualquer lugar do código. Até em outras funções. O formato geral é:

function name(a, b, c) {
  // function code
   return result;
}

A função não tem tipo. Por que, se não há controle de compatibilidade de tipos na própria linguagem? Parâmetros de função também podem estar ausentes. Assim como o comando return, que retorna um valor.

Ao chamar uma função, você pode passar qualquer número de parâmetros de qualquer tipo . O excesso será descartado, os faltantes serão iguais null.

Exemplos de funções:

function getValue(name)
{
    return this[name];
}
function setValue(name, value)
{
    this[name] = value;
}

2.4 Matrizes em JavaScript

Arrays em JavaScript são muito semelhantes a arrays em Java. Exemplos:

var array = [1, 2, 3, 4, 5];
array[3] = array[2];
console.log (array[0]);

Eles podem ter valores de qualquer tipo, até mesmo outros arrays:

var array = [1, "Hello", 3.14, [4, 5] ];
array[3] = array[2];
console.log (array[0]);

Além disso, os arrays também se comportam como coleções - você pode adicionar elementos dinamicamente a eles:

var array = [];
array.push(100);
array.push(101);
array.push(102);

array[1] = array[2];
console.log (array[0]);

2.5 Objetos em JavaScript

Os objetos em JavaScript são muito semelhantes ao HashMap em Java: eles contêm pares chave-valor. Exemplo:

var obj = {
 name: "Bill Gates",
 age: 67,
 company: "Microsoft"
};

console.log (obj.age);

Os campos de objeto podem ser acessados ​​de duas maneiras diferentes:

var x = obj.age;
var x = obj["age"];

Assim como no HashMap, os campos podem ser criados e excluídos. Exemplo:

var obj = {};
obj.name = "Bill Gates";
obj.age = 67;
obj.company = "Microsoft";

delete obj.age;  //remove field