impJS / impAprendaJS

Grupo de estudos para pessoas que querem aprender JavaScript.
61 stars 17 forks source link

Semana 2 #36

Closed HenriqueSilverio closed 10 years ago

HenriqueSilverio commented 10 years ago

Inicio: 23/02/2014 ~ Fim: 01/03/2014

Instruções: https://github.com/impJS/impAprendaJS/wiki/Semana-2

Observação: dúvidas recorrentes para esta semana deverão ser publicadas neste link.

HenriqueSilverio commented 10 years ago

Project Euler 1

Segue minha solução para o problema proposto:

var total = 0;

for( var i = 0; i < 1000; i++ ) {
    if( i % 3 === 0 || i % 5 === 0 ) {
       total += i;
    }
}

console.log(total); // 233168
fbadaro commented 10 years ago

Segue minha solução do Projeto Euler.

http://jsfiddle.net/fbadaro/2jU76/

andersonaap commented 10 years ago

http://jsbin.com/lonapohi/1/watch?js,console

idêntico aos anteriores :(

fdaciuk commented 10 years ago

A solução do projeto Euler não tem muito o que diferenciar, mas segue uma ideia pra deixar um pouco mais performático: http://codepen.io/anon/pen/JIewg

Ou usando while: http://codepen.io/anon/pen/eIlpx

xD

osmarcs commented 10 years ago

O meu nada de diferente: http://jsbin.com/molak/1/edit?js,console

HenriqueSilverio commented 10 years ago

Segue algumas anotações que fiz, de alguns pontos que achei importante no capítulo 3.

Capítulo 3: Tipos, Valores e Variáveis

Os tipos de JavaScript podem ser divididos em duas categorias: primitivos e objetos.

Qualquer valor em JavaScript que não seja um número, string, boolean, null ou undefined, é um objeto.

Os tipos também podem ser divididos em: tipos com métodos e sem métodos, ou mutáveis e imutáveis.

As variáveis em JavaScript são não tipadas e são declaradas com a keyword var.

JavaScript utiliza escopo léxico, ou seja: variáveis declaradas fora de uma função são "variáveis globais" e as declaradas dentro de uma função tem "escopo de função" (visíveis apenas no corpo da função à qual foram declaradas).

Strings, Números, Booleans diferem de objetos pois suas propriedades são somente para leitura e não é possível definir novas propriedades neles.

Objetos são comparados por referência. Se quiser clonar (criar uma nova cópia) de um objeto ou array, deverá copiar explicitamente as propriedades do objeto ou dos elementos do array.

Escopo de variável

Variável global: tem escopo global, ou seja, está definida para ser usada em qualquer parte do código JavaScript.

Variável local: Variáveis declaradas dentro do corpo de uma função estão definidas apenas dentro da função. Parâmetros de função também constam como variáveis locais, ou seja, estão disponíveis apenas dentro da função a qual foram declaradas e tem precedência à variáveis globais que tem o mesmo nome.

andersonaap commented 10 years ago

Shallow copy (clone sem profundidade) para array e objeto.

http://jsbin.com/gijujoza/3/edit

jacobsenana commented 10 years ago

Então, com relação ao desafio 1 fiz ele baseado no artigo dessa semana e transformei ele num objeto. Quem quiser ver, estou colocando esse e todo o código que ando fazendo daqui nesse repositório: http://goo.gl/AHosWR

osmarcs commented 10 years ago

Leitura do capítulos terminada e exercícios do CodeAcademy concluídos dia 27/02.

grodrigues commented 10 years ago

Terminada a seção do codecademy, lidos os capítulos do guia definitivo, lido o artigo e aprendir o que é expressão Regular e segue a minha resolução do projeto Euler. Agora não tenho dúvidas que vou aprender Javascript Rumo a próxima semana!!!!

http://jsfiddle.net/gfront/GcW58/

Concluída as atividades hoje no dia 01/03

Segue a resolução correta não tinha sido salvo no momento que eu enviei. http://jsfiddle.net/H3v4z/3/

osmarcs commented 10 years ago

@grodrigues bem o a resolução do desafio de Euler esta errada, vc tem q somar, a var i, a uma variável total a cada vez que i for múltiplo de 3 ou 5, da uma olhada nas resoluções dos outros participantes.

HenriqueSilverio commented 10 years ago

Terminei as tarefas dessa semana hoje, dia 01/03/2014.

Estou numa correria danada com freela para terminar, "666 trabalhos das 666 matérias" da faculdade para fazer e as tarefas do roteiro para seguir, entre outras coisas.

Mas é isso aí, missão cumprida. "Bora" pra próxima semana!

crissilvaeng commented 10 years ago
2ª Semana Andamento das Tarefas
Leitura: Capítulos 3 à 5 100%
Codeacademy: Secções 2 à 6 100%
Desafio: Project Euler I 20%
HenriqueSilverio commented 10 years ago

@CristinaSilvaEng Show! Só uma observação: a leitura do artigo "JavaScript Objects in Detail" faz parte das tarefas da Semana 3. ;-)

leonascimento commented 10 years ago

Capítulo 3,4,5 do Livro ------------->OK Code Acedemy: Seção 2 até 6--->OK Desafio do Project Euler I:--------->OK Forma Normal: - http://jsbin.com/biyejelu/1/edit

function desafio(){
  var result = 0,i=0;
  for(;i<1000;i++)
    if(i % 3 === 0 || i % 5 === 0)result += i;  
  return result;
}
console.log(desafio());

Forma Resumida: - http://codepen.io/anon/pen/zjBeg

var desafio = function(){
    var result = i = 0;
    for(;i<1000;i++)(i % 3 === 0 || i % 5 === 0) ? result += i:''; return result;
}
console.log(desafio());

Artigo JavaScript Objects in Detail: Lendo Agora e Finalizando! Let's Go :+1:

Jessica7 commented 10 years ago

Livro JS capítulos da semana 2 (finalizado) Code Academy (finalizado) Project Euler 1- Lógica bem humilde:http://codepen.io/anon/pen/Kldaw (finalizado) JavaScript Objects - Artigo (leitura para o domingão)

andersonaap commented 10 years ago

Terminei os capitulos, project euler, o artigo, não deu tempo de completar o code academy.

Acho que vou ter que rever algumas questões, principalmente sobre os "Type Conversion", object-to-primitive, primitive-to-object, ..., quais operações exigem uma outra conversão.

Saber melhor o que aconte quando fazemos

[] + []
{} + []
[] + {}
{} + {}
crissilvaeng commented 10 years ago

Obrigada, @HenriqueSilverio, me sinto menos enrolada agora.

ericdouglas commented 10 years ago

Galera, desculpa pelo atraso! Essa semana eu viajei alguns dias e depois que cheguei fiquei + 3 dias sem internet! hehe Mas consegui terminar tudo! E já vamos emendar na próxima semana =D

Tarefa Status
Leitura Cap. 3, 4, 5
Project Euler
Codecademy 2 ao 6
andersonaap commented 10 years ago

Enviado por Samsung Mobile

-------- Mensagem original -------- De : Eric Douglas notifications@github.com Data: 02/03/2014 16h10 (GMT-03:00) Para: impJS/impAprendaJS impAprendaJS@noreply.github.com Cc: Anderson Pavia andersonaap@hotmail.com Assunto: Re: [impAprendaJS] Semana 2 (#36)

Galera, desculpa pelo atraso! Essa semana eu viajei alguns dias e depois que cheguei fiquei + 3 dias sem internet! hehe Mas consegui terminar tudo! E já vamos emendar na próxima semana =D

Tarefa Status Leitura Cap. 3, 4, 5 ✔ Project Euler ✔ Codecademy 2 ao 6 ✔ — Reply to this email directly or view it on GitHub.

fdaciuk commented 10 years ago
Tarefa Status
Leitura Cap. 3, 4, 5 3 ✔ 4 ✔ 5 ✔
Project Euler
Codecademy 2 ao 6