Letícia Rodrigues
    • Create new note
    • Create a note from template
      • Sharing URL Link copied
      • /edit
      • View mode
        • Edit mode
        • View mode
        • Book mode
        • Slide mode
        Edit mode View mode Book mode Slide mode
      • Customize slides
      • Note Permission
      • Read
        • Only me
        • Signed-in users
        • Everyone
        Only me Signed-in users Everyone
      • Write
        • Only me
        • Signed-in users
        • Everyone
        Only me Signed-in users Everyone
      • Engagement control Commenting, Suggest edit, Emoji Reply
    • Invite by email
      Invitee

      This note has no invitees

    • Publish Note

      Share your work with the world Congratulations! 🎉 Your note is out in the world Publish Note

      Your note will be visible on your profile and discoverable by anyone.
      Your note is now live.
      This note is visible on your profile and discoverable online.
      Everyone on the web can find and read all notes of this public team.
      See published notes
      Unpublish note
      Please check the box to agree to the Community Guidelines.
      View profile
    • Commenting
      Permission
      Disabled Forbidden Owners Signed-in users Everyone
    • Enable
    • Permission
      • Forbidden
      • Owners
      • Signed-in users
      • Everyone
    • Suggest edit
      Permission
      Disabled Forbidden Owners Signed-in users Everyone
    • Enable
    • Permission
      • Forbidden
      • Owners
      • Signed-in users
    • Emoji Reply
    • Enable
    • Versions and GitHub Sync
    • Note settings
    • Note Insights New
    • Engagement control
    • Transfer ownership
    • Delete this note
    • Save as template
    • Insert from template
    • Import from
      • Dropbox
      • Google Drive
      • Gist
      • Clipboard
    • Export to
      • Dropbox
      • Google Drive
      • Gist
    • Download
      • Markdown
      • HTML
      • Raw HTML
Menu Note settings Note Insights Versions and GitHub Sync Sharing URL Create Help
Create Create new note Create a note from template
Menu
Options
Engagement control Transfer ownership Delete this note
Import from
Dropbox Google Drive Gist Clipboard
Export to
Dropbox Google Drive Gist
Download
Markdown HTML Raw HTML
Back
Sharing URL Link copied
/edit
View mode
  • Edit mode
  • View mode
  • Book mode
  • Slide mode
Edit mode View mode Book mode Slide mode
Customize slides
Note Permission
Read
Only me
  • Only me
  • Signed-in users
  • Everyone
Only me Signed-in users Everyone
Write
Only me
  • Only me
  • Signed-in users
  • Everyone
Only me Signed-in users Everyone
Engagement control Commenting, Suggest edit, Emoji Reply
  • Invite by email
    Invitee

    This note has no invitees

  • Publish Note

    Share your work with the world Congratulations! 🎉 Your note is out in the world Publish Note

    Your note will be visible on your profile and discoverable by anyone.
    Your note is now live.
    This note is visible on your profile and discoverable online.
    Everyone on the web can find and read all notes of this public team.
    See published notes
    Unpublish note
    Please check the box to agree to the Community Guidelines.
    View profile
    Engagement control
    Commenting
    Permission
    Disabled Forbidden Owners Signed-in users Everyone
    Enable
    Permission
    • Forbidden
    • Owners
    • Signed-in users
    • Everyone
    Suggest edit
    Permission
    Disabled Forbidden Owners Signed-in users Everyone
    Enable
    Permission
    • Forbidden
    • Owners
    • Signed-in users
    Emoji Reply
    Enable
    Import from Dropbox Google Drive Gist Clipboard
       Owned this note    Owned this note      
    Published Linked with GitHub
    • Any changes
      Be notified of any changes
    • Mention me
      Be notified of mention me
    • Unsubscribe
    # Playlist Javascript - Resumo >[color=#055b5c]**Autor:** Letícia Rodrigues da Silva **Número:** 25 **Turma:** IndoD [toc] ## Introdução >[color=#055b5c]1 - javascript é uma linguagem de programação de alto nível(seus comandos estão mais próximos da linguagem natural do que da linguagem de máquina). 2 - não precisa informar o tipo da variável. 3 - linguagem case sensitivy(quando maiúculas e minúsculas importam). "use strict" - tira a fraca rigidez ao digitar os códigos. javascript é uma linguagem dinâmmica de tipagem fraca(significa que o valor pode ser alterado após ser definido). diferente do c#, javascript não possui muitas regras. 0 = false / 1 = true ## Variáveis >[color=#055b5c]4 - se usa o "var" para declarar uma variável; criando variavel com a palavra let(pode - se alterar o valor após o mesmo ser definido, semelhante a palavra var). let e const são mais utilizados; 5 - criar multiplas variáveis usando a instrução "var"; ex: var a = 10, b = "oie", c = false, d = new Date(); 6 - para alterar uma variável não precisa usar o var(ex: d = 30). 7 - tipos primitivos(int, string, bool, date, etc..). 8 - criando variavel com a palava const(após ser definido o valor, o mesmo não poderá ser alterado). 9 - identificando o tipo da variável usando o "typeof". 10 - operadores matemáticos: +, -, *, /. 11 - criando expressões matemáticas em uma unica linha de código(ex: var x = 10 * 2 - 2). 12 - processo de incrementação e decrementação 13 - operadores aritméticos e concatenação. 14 - formas de conversão de number para string. Usando string(ex: var b = String(a)) e toString(ex: b = a.toString). 15 - conversão de string para number. Usando Number(ex: var b = Number(a)) e utiluzando parseInt(ex: b = a.parseInt(a)) / parseFloat(converte para números decimais). 16 - trabalhando com boolean 17 - conversão de string em date: 18 - javascript realiza algumas conversões automaticamente, ex: variáveis do tipo numérico: x++(adição de 1 em 1) / x--(subtração de 1 em 1). 19 - valor null - é um objeto, valor da ausencia de um valor. funções anônimas: não possuem nome, ficam armazenadas em uma variável; funções de leitura são acessadas através das funções get: funções nomeadas: as funções são acessadas atraves de seu nome; negação tambem é utilizada com variáveis. no caso de ausencia de valores, se tornara undefined. o parametro é uma variável mas não é necessário especificar seu tipo operado ===(além de comparar os valores também irá comparar os tipos). para declarar uma variável se usa "const"(não pode ser alterada após ser criada). também é possivel chamar com variáveis. ## função de texto >[color=#055b5c]21 - manipulando variáveis do tipo string. 22 - indexOff: indica a posição de um caractere. 23 - charAt: pesquisar o caractere a partir de uma posição dada; charCodeAt: retorna o código ASCII. 24 - replace: substituir um texto ou caractere por outro. 26 - substring: irá cortar um texto, recebe dois parametros(começo do recorte e final). 27 - split: transformar um texto em um array(recebe um parametro que diz a partir de que caractere como cará a transformação). 28 - concat: contatenar. Aceita quantos parametros o programador desejar passar. forma de usar o indexOff: texto.indexOff(l) - indicando um caractere; lastIndexOf: procura a posição só que o ultimo para o primeiro. lastIndexOff: começa do final para o começo. length: retorna a quantidade de caracteres. texto.index.Off("a", 8) - irá procurar o "a" a partir da oitava posição. ## função de número >[color=#055b5c]29 - Math.ceil: arredonda para cima; 30 - Math.pow: realiza a potência de um valor; 31 - Math.abs: retorna sempre um valor absoluto(positivo); 32 - Math.random: gera um número aleatório; : reprovou ? passou ? verdadeiro / : falsa, ex: Ex: const somar(a, b) => { Math.floor: arredonda para baixo; Math.max: irá identificar qual o maior número entre os que foram passados; Math.min: irá retornar o menor número. Math.round: arredondar para apenas 1 digito. Math.sqrt: realiza a raiz quadrada de um valor. operador para realizar a potência: ** (ex: x = 10 ** 2 = 100). ## função de data >[color=#055b5c]33 - variável do tipo data é um objeto; 34 - a contagem de mes em javascript começa do 0, ou seja, janeiro seria 0. getDate: retorna o dia; getDay: retorna o dia da semana / número do dia; getFullYear: retorna o ano; getMonth: retorna o numero do mes; setDate: alterar o dia. ## Condição >[color=#055b5c]35 - escolha do programa entre executar uma linha de código ou não. 36 - condição realiza a comparação entre dois valores usando operadores relacionais. 37 - caso a condição seja verdadeira, o comando que está no if será executada. 38 - é possivel comparar com um variavel fixa ou com outra variavel. 39 - toda comparação tem como retorno um boolean. 41 - o comando else(complemento do if) será executado caso a comparação seja falsa. 42 - se o comando if for verdadeiro, os outros comandos não serão executados(else e else if); 43 - o comando if pode ser usado com chamadas de função. 44 - para unir duas comparações no comando if se usa operadores lógicos(||, &&, etc). 45 - o comando && pede para que as duas comparações sejam verdadeiras, já o comando ||, se apenas uma comparação for verdadeira o comando será executado. 46 - trabalhando com operador da negação - ex: if(!(nota < 5)), irá inverter o resultado da condição(se a comparação for falsa será invertida para verdadeira e vice versa); 47 - no comando if os dois valores precisam ser do mesmo tipo, porém se passar string e number, o javascrip converterá automáticamente para number; 48 - if ternário: realiza uma comparação podendo unir a outra comparação; 49 - usando o operador || sem ser no conceito de condição: x = a || 200(significa que se a for null ou undefined, x irá assumir o valor de 200). 50 - comando switch: switch(semaforo){ 51 - se o comando for verdadeiro o switch será executado, se não tiver outro case para comparação, não será executado nenhum comando. ## Coleção >[color=#055b5c] 52 - coleção guarda diversos itens dentro dela, representada pelos [] (ex: var numeros = [10, 20, 30, 40]); 53 - array são definidos com [] e separados por virgula; 54 - array também pode ser criado usando uma quebra de linha; 55 - para ler o item de um array é da seguinte forma: var x = nmvariavel[posição do item]. 56 - isArray: verifica se uma variável é um array ou não(ex: Array.isArray(nome da variavel)). 57 - length: retorna a quantidade de itens de um array; 58 - forEach: nos itens da variavel realiza uma repetição passando por cada item e para cada item faça alguma coisa. 59 - podemos usar funções especificas para manipular dados de array. 60 - expressões usando a função filter. 61 - função every: verifica todos os itens(retorna true ou false); 62 - indexOff: descobrir a posição de um array; 63 - função find: recebe como parametro outra função(retorna o primeiro item que satisfaça a condição). 64 - função findIndex: ao inves de retornar o valor, retorna a posição do item. 65 - função map: realiza a conversão de um array para outro array; 66 - função reduce: irá sempre retornar um valor novo e assim como as outras, passa por cada item de uma coleção; pode ter quantas linhas de código o programador desejar; pop: remove o ultimo item; push: adiciona itens ao final de uma coleção; reverse: irá ordenar os itens de forma decrescente; shift: remove o primeiro item. sort: ordena de forma crescente. splice: permite adicionar informando a posição. ## Repetição >[color=#055b5c]67 - for: utilizado quando queremos contar. 68 - o comando for possui 3 partes(for (var i = 0; i < 10; i++)) 70 - em variáveis do tipo objeto, o comando for pode descobrir cada um dos campos de um objeto complexo(ex: for (var p in pessoa): pessoa é a variável que será inspecionada). 71 - comando while: é mais abrangente que o for, baseado em uma condição podendo ser qualquer uma(variáveis, funções, etc); 72 - no comando while podemos comparar qualquer tipo de função variáveis, etc, sendo assim mais abrangente que o for, o for apenas realiza contagens numericas; while pode ser lido como enquanto(ex: while(ano <= 2020) - significa que enquando o ano for menor ou igual a 2020, o comando será repetido); 73 - comando continue: irá pular uma das voltas do comando for; i < 10 - define a condição para que o for continue i = 0 - valor de onde começará a contagem i++ - a cada volta realizada será somada 1 break; case "tests que serão feitos em relação a variável": console.log("mensagem") } return r; var r = x * 2; return function(x){ } let s = a + b; return s; } } comando break: ao inves de pular, ele encerra a repetição. comando do: realiza o seu primeiro teste só depois que os comandos já foram executados, o comando do while é execuado pelo menos 1 vez. comando if é sempre um novo comando. some: pelo menos 1 item precisa satisfazer a comparação. ## Função >[color=#055b5c] 74 - função é um dos principais elementos em uma linguagem; a linguagem js trata a função como elementos diferenciados. 75 - funções podem receber ou não parametros; o código pode ficar em apenas 1 linha ou dividido em outras linha. 76 - o js irá identificar o tipo sem que o programador precise indicá-lo; 78 - uma função pode ou não ter parametros e pode ou não retornar um valor; 79 - pode-se criar quantas funções for necessário. 80 - para chamar as funções basta chama-lá pelo nome e invocar com os parametros com o tipo certo; 81 - uma função pode chamar outra função. 82 - se na hora de chamar a função for passados os parametros com tipos errados, o programa irá converter automáticamente(ex: se o tipo certo for number e for passado string ao chamar, o programa converterá automaticamente para string); 83 - regras ao chamar uma função: chamar a função pelo nome, passar a quantidade de parametros que a função recebe e armazenar a resposta da função em uma variável; 85 - parametros em uma função são opcionais; 86 - arrow functions: outra forma de escrever funções anonimas é no formato de setas, dividindo os parametros da função do corpo da mesma. 87 - existe uma forma mais abreviada quando a função tiver apenas 1 linha de código usando arrow function, sendo: const somar = (a, b) => a + b. 89 - passagem por valor e passagem por referência; 90 - uma função pode também receber outra função como parâmetro. 91 - funções que retornam função; os valores que são passados a mais em uma função são desconsiderados; passagem por refeência: o valor é alterado dentro da função. passagem por valor: o conteúdo da variável foi copiado para o parametro da função; pode - se realizar funções dentro da função map; quando definimos uma função, ela estará pronta para ser usada. tipos principais: number, string, boolean e object. toFixed: se usa informando a quantidade de casas decimais que queremos arredondar. toLowerCase: deixa todos os caracteres em minúsculo. toUpperCase: deixa todos os caracteres em maiúsculo. trim: remove os espaços do começo e do final da string. undefined - não é um objeto, significa que a variável nunca teve um valor. unshift: adiciona ao começo de uma coleção; var a = "15" + 5 (string e number, 0 5 automaticamente será convertido para string. Acontecendo assim a concatenação resultando em "155". var a = Date.parse(x) - será convertido em number var b = "15" - 5(nesse caso o 15 será convertido para number resultando em 10). var d = new Date(a) - o retorno será a data. var x = "2021-08-08" x += 5(irá adicionar 5 a variável criada). ## Objeto >[color=#055b5c] 93 - a função pode ou não ter parametros; a linguagem JavaScript tem a possibilidade de criar objetos compostos. 94 - um objeto é composto de um nome e um valor; esses objetos são identificados através de {} ex: function criarDobrador(){ 95 - para alterar um objeto composto é como se estivesse alterando uma variavel normalmente; para atribuir o valor de um objeto se usa ";" maas para ler ou alterar um objeto utiliza-se o sinal =. 96 - um objeto guarda uma coleção de valores, ou um objeto guarda uma coleção de outros objetos; um objeto também poderia ser um array, porém ao invés de passar posições, iremos colocar o nome do objeto que queremos acessar. 97 - também pode-se armasenar variáveis ou arrays do tipo data; é possível criar um objeto composto dentro de outro objeto composto através do sinal "{}", podendo assim criar uma cadeia de objetos compostos. 98 - podemos remover objetos apos serem criados usandlo a palavra "delete". 99 - objeto composto pode também obter funções; 100 - outra forma de criar objetos é colocando nome nos mesmos; para criar um novo objeto, também se usa a palavra function; o nome do objeto começa sempre com letra maiúscula; para armazenar os valores que vieram como parametro, se utiliza a palavra "this". 101 - formas de criar um objeto: 1 - declarando o objeto de forma anonima; 2 - criando objeto de forma nomeada. 102 - criando objeto de forma oculta, pode-se usar o metodo arrow function para criar a função. 104 - outra forma de criar objeto é através da paravra "class", dentro da classe definimos a função para o objeto. 105 - função constructor é usada no momento que criamos o objeto. 106 - existem funções especiais chamadas getters e setters, usa-se como uma função normal, só que antes do nome do objeto se coloca o get ou set. get - cosulta, set - alterar. 108 - existe uma funcionalidade chamada herança, o objeto irá herdar(usando a palavra extends) as funcões e variáveis de otro objeto; super: chamar o construtor do objeto herdado. ## Módulo >[color=#055b5c] 109 - em js, quando criamos uma variável a mesma se torna uma variável global. 110 - quando introduzimos o conceito de modulo, quando falamos que cada arquivo em js é um módulo, estamos falando que ele é independente, nãlo sendo mais uma variável global. 111 - existem meios para que um módulo compartilhe informações com outro módulo, através da palavra "export"; export - irá exportar suas informações para que outros módulos possam acessá-las; ex: export { variável }; no módulo que queremos acessar a informação, iremos utilizar a palavra "import"; ex: import { variavel } from caminho do arquivo. 112 - pode-se exportar mais de uma variável. 113 - pode-se também importar objetos e funções. 114 - podemos exportar direto na variável ou na função que desejamos; ex: export let texto = "Oie". 115 - outra forma de importar elementos, usando o export default; export default - com a palavra default não é necessário o uso de chaves(tanto na importação quanto na exportação). ## Escopo >[color=#055b5c] 116 - contexto de execução(escopo) - toda variável que criamos está ligada ao contexto de execução global. 117 - importancia da palavra let ao criarmos uma variável. 118 - vincular um contexto de execução a outro, definindo uma função dentro de outra; outer context - qual é o contexto que está sendo apontado. 120 - contexto de execução tem o mesmo raciocínio de quando usamos a sintaxe "class". 121 - na linguagem javascript, contexto de execução são criados por função e não por blocos de comando; antes de executar um código, a linguagem js aloca espaços na memória para todas as variáveis que são encontradas; criando a variável com a palavra let, a linguagem cria um alerta; o escopo permite fazer com que não seja possível criar variáveis em contextos menores e utilizá-las fora desse contexto menor. 122 - para proteger os códigos de erros inesperados, usamos o try e catch; no try fica o código que queremos executar; no cath iremos realizar um trecho de código caso tenha erros no try.

    Import from clipboard

    Paste your markdown or webpage here...

    Advanced permission required

    Your current role can only read. Ask the system administrator to acquire write and comment permission.

    This team is disabled

    Sorry, this team is disabled. You can't edit this note.

    This note is locked

    Sorry, only owner can edit this note.

    Reach the limit

    Sorry, you've reached the max length this note can be.
    Please reduce the content or divide it to more notes, thank you!

    Import from Gist

    Import from Snippet

    or

    Export to Snippet

    Are you sure?

    Do you really want to delete this note?
    All users will lose their connection.

    Create a note from template

    Create a note from template

    Oops...
    This template has been removed or transferred.
    Upgrade
    All
    • All
    • Team
    No template.

    Create a template

    Upgrade

    Delete template

    Do you really want to delete this template?
    Turn this template into a regular note and keep its content, versions, and comments.

    This page need refresh

    You have an incompatible client version.
    Refresh to update.
    New version available!
    See releases notes here
    Refresh to enjoy new features.
    Your user state has changed.
    Refresh to load new user state.

    Sign in

    Forgot password

    or

    By clicking below, you agree to our terms of service.

    Sign in via Facebook Sign in via Twitter Sign in via GitHub Sign in via Dropbox Sign in with Wallet
    Wallet ( )
    Connect another wallet

    New to HackMD? Sign up

    Help

    • English
    • 中文
    • Français
    • Deutsch
    • 日本語
    • Español
    • Català
    • Ελληνικά
    • Português
    • italiano
    • Türkçe
    • Русский
    • Nederlands
    • hrvatski jezik
    • język polski
    • Українська
    • हिन्दी
    • svenska
    • Esperanto
    • dansk

    Documents

    Help & Tutorial

    How to use Book mode

    Slide Example

    API Docs

    Edit in VSCode

    Install browser extension

    Contacts

    Feedback

    Discord

    Send us email

    Resources

    Releases

    Pricing

    Blog

    Policy

    Terms

    Privacy

    Cheatsheet

    Syntax Example Reference
    # Header Header 基本排版
    - Unordered List
    • Unordered List
    1. Ordered List
    1. Ordered List
    - [ ] Todo List
    • Todo List
    > Blockquote
    Blockquote
    **Bold font** Bold font
    *Italics font* Italics font
    ~~Strikethrough~~ Strikethrough
    19^th^ 19th
    H~2~O H2O
    ++Inserted text++ Inserted text
    ==Marked text== Marked text
    [link text](https:// "title") Link
    ![image alt](https:// "title") Image
    `Code` Code 在筆記中貼入程式碼
    ```javascript
    var i = 0;
    ```
    var i = 0;
    :smile: :smile: Emoji list
    {%youtube youtube_id %} Externals
    $L^aT_eX$ LaTeX
    :::info
    This is a alert area.
    :::

    This is a alert area.

    Versions and GitHub Sync
    Get Full History Access

    • Edit version name
    • Delete

    revision author avatar     named on  

    More Less

    Note content is identical to the latest version.
    Compare
      Choose a version
      No search result
      Version not found
    Sign in to link this note to GitHub
    Learn more
    This note is not linked with GitHub
     

    Feedback

    Submission failed, please try again

    Thanks for your support.

    On a scale of 0-10, how likely is it that you would recommend HackMD to your friends, family or business associates?

    Please give us some advice and help us improve HackMD.

     

    Thanks for your feedback

    Remove version name

    Do you want to remove this version name and description?

    Transfer ownership

    Transfer to
      Warning: is a public team. If you transfer note to this team, everyone on the web can find and read this note.

        Link with GitHub

        Please authorize HackMD on GitHub
        • Please sign in to GitHub and install the HackMD app on your GitHub repo.
        • HackMD links with GitHub through a GitHub App. You can choose which repo to install our App.
        Learn more  Sign in to GitHub

        Push the note to GitHub Push to GitHub Pull a file from GitHub

          Authorize again
         

        Choose which file to push to

        Select repo
        Refresh Authorize more repos
        Select branch
        Select file
        Select branch
        Choose version(s) to push
        • Save a new version and push
        • Choose from existing versions
        Include title and tags
        Available push count

        Pull from GitHub

         
        File from GitHub
        File from HackMD

        GitHub Link Settings

        File linked

        Linked by
        File path
        Last synced branch
        Available push count

        Danger Zone

        Unlink
        You will no longer receive notification when GitHub file changes after unlink.

        Syncing

        Push failed

        Push successfully