Buscar

Revisão Javascript Parte 1

Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original

// use let para criar uma variavel
let age = 30;
let year = 2020;
age = 31;
console.log(age);
//constante: nao muda o valor
const naoMuda = 30;
//naoMuda = 10; // sobreescrever da erro
console.log(naoMuda);
//forma antiga de declar uma variavel
var score = 75;
//Javascript Data Types
// Number: 1 ,2 , 3.13
//String: 'hello', "thanos@deuruim.com"
//Boolean: true / false
//Null: seta explicitamente uma variavel com nada: no value
//Undefined: Para variaveis que ainda nao foram definidas
//Object: estrutura de dados complexas - Arrays, Dates, Literals, etc 
//Symbol: Usado com objetos (veremos depois)
//Javascript: linguagem fracamente tipada
//Strings
console.log('hello, world');
let email = 'thanos@deuRuim';
console.log(email);
// string concatenation - concatenar
let firstName = 'Saulo';
let lastName = 'Thanos';
let fullName= firstName + ' ' + lastName;
console.log(fullName);
// getting characters - lendo caracteres
console.log(fullName[2]);
// string length - tamanho: propriedade do objeto string
console.log(fullName.length);
// string methods - metodos
// toUpperCase() eh um metodo do objeto string: ()
console.log(fullName.toUpperCase());
let result = fullName.toLowerCase();
console.log(result, fullName);
//index = posicao retorna a posicao do carater
let index = email.indexOf('@');
// por que o valor index eh 6 e nao 7 ?
let email2 = 'saullo@thanosss.com';
// ultima posicao de um character
let lastIndex = email2.lastIndexOf('s');
console.log(lastIndex)
let slice = email2.slice(0,5); // 0 ate 4
console.log('slice=', slice);
slice = email2.slice(3,9); // 3 ate 8
console.log('slice=', slice);
//le 3 caracteres a partir da posicao 2
slice2 = email2.substr(2, 3);
console.log(slice2)
//no lugar do s ira por t
let result2 = email2.replace('s', 't');
console.log(result2)
//numbers
let radius = 10;
const pi = 3.14;
let result3 = pi * radius**2; // ** expoente
//order of operation: B I D M A S
//brackets, index, division, mult, add, sub
let likes = 10;
likes = likes + 1;
likes++;
likes--;
likes += 10; // likes = likes + 10
likes -=5;
likes *=2;
likes /=4;
console.log('likes = ', likes);
// NaN - not a number
console.log(5/'hello'); // NaN
// template strings
const title = 'Best reads of 2019';
const author = 'Thanos';
const likes2 = 30;
//concatenation way
let result4 = 'O blog chamado ' + title + ' by '+ author + ' tem ' + likes2 + ' likes';
console.log(result4);
// template string way or template literal
// I prefer this one. So do I.
// `` para criar template string
let resStr2 = `O blog chamado TITLE by AUTHOR tem LIKES likes`; 
// queremos substituir TITLE por uma variavel
// fazer o mesmo para AUTHOR e LIKES
// para tal usar: ${variavel}
let resStr = `O blog chamado ${title} by ${author} tem ${likes2} likes`; 
console.log(resStr);
//Objects: Arrays - colecao de dados
let ninjas = ['Erlon', 'Susi', 'CC-SI']; // strings
let myVet = [];
//exibir o segundo elemento do array
console.log("Nome do Ninja: ", ninjas[1]);
let ages = [20,25,30,35]; // numbers
let random = ['hugo', 'tatu', 20, 30]; // 2 tipos
console.log(random);
//array properties
console.log(ninjas.length);
// array methods
//join: junta todo mundo numa so string e 
// apos cada elemento vai por uma ,
let tudoJunto = ninjas.join(', ');
console.log(tudoJunto);
//retorna o index/posicao do elemento
let pos = ninjas.indexOf('Erlon');
console.log(pos)
//concatenar dois arrays: resultado eh um array
let concVet = ninjas.concat(['texugo', 'tatu-bola']);
console.log(concVet);
// add a new element no final and return the array length
let size = ninjas.push('vaga-lume');
console.log(ninjas);
console.log('size= ', size);
// remove o ultimo elemento e o retorna
valorRemovido = ninjas.pop();
console.log(ninjas);
console.log(valorRemovido);
// difference between Null and Undefined
let age2; // foi declarado mas nao tem valor (undefined)
// na verdade o valor undefined foi atribuido a age2
console.log(age2, age2+3, `the age is ${age2}`);
// undefined NaN the age is undefined
let age3 = null; // age3 tem um valor vazio
console.log(age3, age3+3, `the age is ${age3}`);
// null 3 the age is null
// em javascript null+3=3, pois null numa formula
//eh substituido por zero.
//em outras linguagens null+qq coisa eh null
// booleans & comparisons
console.log(true, false, 'true', 'false');
let myEmail = 'saullo@gmail.com';
let temA = myEmail.includes('@'); // true or false
console.log(temA); // true
temA = concVet.includes('texuga'); // false
console.log(temA);
temA = concVet.includes('texugo'); // true
console.log(temA);
//comparison operators
let idade = 25;
console.log(idade == 25); //= = igual duas vezes
console.log(idade != 25); //! = not equal 
// > < <= >= // < = , > =
let nome = 'flamengo';
console.log(nome=='flamento');
console.log(nome > 'ana'); // sim pois f vem depois de a
// letra minuscula eh > do que qualquer letra maiscula
console.log(nome > 'Flamengo');
console.log(nome > 'Alamengo');
//comparacao fraca: loose comparison
// different types can still be equal
let newAge = 25;
console.log(newAge == 25); // true
console.log(newAge == '25'); // true
// no entanto newAge eh number e '25'eh string
// strict comparison: different types cannot be equal
// ! = = ou = = = (juntos, sem espaco)
// mesmo valor e tipo: compara ambos.
console.log(newAge === 25); // true
console.log(newAge === '25'); // false
console.log(newAge !== 25); // false 
console.log(newAge !== '25'); // true
// type conversion
let cont = '100';
console.log(typeof(cont));
// quero computar algo com score: adicionar um valor a score
// como???
// converter a string '100' em number, depois 
//fazer a soma e a atribuicao
// converter score para Number
cont = Number(cont);
console.log(cont +1); // score eh Number agora
console.log(typeof(cont));
// explicit conversion
// conveter a string 'hello'em numero
let res = Number('hello'); // res = NaN
console.log(res);
// esta conversao acima nao tem sentido
// mas posso converter uma string em number
let resString = String(50);
console.log(resString, typeof resString);
let vBool = Boolean(100);
console.log(vBool, typeof vBool); // true Boolean
vBool = Boolean(0); // 0 eh falso
console.log(vBool, typeof vBool); // false Boolean
vBool = Boolean('0'); // string nao avazia eh verd
console.log(vBool, typeof vBool); // True Boolean
vBool = Boolean(''); // string vazia eh falso
console.log(vBool, typeof vBool); // False Boolean
// for loops { }---> is a code block
for(let i=0; i < 5; i++){
 console.log('loop = ', i);
}
const names= ['shaun', 'mario', 'luigi']; 
//suponha que leu uma qtde arbitraria de valores 
//para seu vetor a partir de um BD
for(let j=0; j < names.length; j++){
 console.log(names[j]);
}
for(let k=0; k < names.length; k++){
 // trecho de html
 let html=`<div>${names[k]}</div>`;
 console.log(html);
}
// && eh and e || eh or
// logical NOT (!)
// break; continue;
//variables & scope
let tatu = 10;
if(true){
 let tatu = 20;
 console.log(tatu);
}
console.log(tatu);
// function declaration
function soma(a,b){
 return a+b;
}
function sub(a,b){
 return a-b;
}

Teste o Premium para desbloquear

Aproveite todos os benefícios por 3 dias sem pagar! 😉
Já tem cadastro?

Continue navegando