Tipos primitivos - sabrinabm94/javascript GitHub Wiki

Tipos primitivos

No javascript temos 5 tipos primitivos

  • Boolean
  • Number
  • String
  • Null
  • Undefined
  • Object

Podemos chegar o tipo usando o operador typeof.

Boolean

Pode receber os tipos de valores abaixo

let bool: boolean = null;
bool = undefined;

bool = false;
bool = true;

bool = (() => true)();
bool = (() => false)();

console.log(typeof bool);
//boolean

Number

Pode receber os tipos de valores de decimal, hexadecimal, binário e octal.

let num: number = null;
num = undefined;

num = 0;
num = 1;
num = -1;
num = 1.0;
num = 0xf00d;
num = 0b1010;
num = 0o744;

bool = (() => 100)();

console.log(typeof NaN);
console.log(typeof -infinity);
console.log(typeof +infinity);

String

Pode receber os tipos de valores abaixo

let str: string = null;
str = undefined;

str = 'hello';
str = "hello";
str = `hello`;

str = (() => "bye")();

Icamento Faz todas as variaveis usadas serem criadas no topo do arquivo, mas sem valor atribuido (undefined).

console.log(hi);
//undefined

var hi = "oi";
console.log(hi);
//oi

Null

Uma variável com o tipo null é considerada com valor atribuido. Pode receber os tipos de valores abaixo

let nu: null = null;
nu = undefined;

nu = (() => null)();
nu = (() => undefined)();

Undefined

Uma variável com valor Undefined não é considerada com valor atribuído. Pode receber os tipos de valores abaixo

let und: undefined = undefined;
und = null;

und = (() => undefined)();
und = (() => null)();

Object

Funciona como um array associativo em outras linguagens com propriedades de chave e valor.

let obj = {
name: "Sabrina",
age: 30,
}
console.log(obj.name);
//Sabrina

obj.name = "Sara";
console.log(obj.name);
//Sara

Tipos especiais

Temos 5 tipos especiais no Javascript:

  • Void
  • Array
  • Tuple
  • Enum
  • Any

Void

É usado em funções que não retorna nada

function print(message: string): void {
	console.log(message);
}

Array

São objeto usados como listas que podem usar os tipos primitivos como subtipos. Não há listas associativas e por isso sua navegação é somente por índice.

let fruits: string[];
fruits = ["mango", "strawberry", "cramberry", "blackberry"];
console.log(fruits);
//["mango", "strawberry", "cramberry", "blackberry"]

fruits[1] = "blueberry";
console.log(fruits);
//["mango", "blueberry", "strawberry", "cramberry", "blackberry"]

console.log(fruits[1]);
//"blueberry"


Tuple

São matrizes que podem usar os tipos primitivos como subtipos

let coordenates: [string, number, number];

coordenates = ["hello", 1.4, -100];

Enum

São matrizes que podem usar os tipos primitivos como subtipos

enum days {
	MONDAY,
	TUESDAY,
	WEDNESDAY,
	THURSDAY,
	FRIDAY,
	SATURNDAY,
	SUNDAY,
}

let today: days;
today = days.WEDNESDAY;

Any

É o tipo usado quando se quer tipar mas não se quer definir o tipo de uma variável

let user: any = {
	name: string,
	age: number
} = {
	name: "Sara",
	age: 26
}

Referencias

https://www.youtube.com/watch?v=x89T_rGiFiY&list=PLnDvRpP8BneysKU8KivhnrVaKpILD3gZ6&index=10