Skip to content

Instantly share code, notes, and snippets.

@luan03
Last active January 26, 2016 01:15
Show Gist options
  • Save luan03/3529a3b0d1b1993e2f14 to your computer and use it in GitHub Desktop.
Save luan03/3529a3b0d1b1993e2f14 to your computer and use it in GitHub Desktop.
métodos bastante utilizados no jquery para multiplas funções.
.add();
/* Add elements to the set of matched elements. */
map(); / each(); / filter();
is(); / not(); / has();
jQuery.inArray();
/* Search for a specified value within an array and return its index (or -1 if not found). */
jQuery.extend();
/* Merge the contents of two or more objects together into the first object. */
toggle();
jQuery.param();
/* Create a serialized representation of an array or object, suitable for use in a URL query string or Ajax request. */
size();
/* length for selectors */
prop();
.closest()
var person = {
firstName: 'Jimmy',
lastName: 'Smith',
myProperty: "someValue",
myConfig: {
useCaching: true,
language: "en"
},
getfullName() {
return this.firstName + ' ' + this.lastName;
},
setFullName (name) {
var words = name.toString().split(' ');
this.firstName = words[0] || '';
this.lastName = words[1] || '';
}
}
/* Git Remoto! */
git remote add origin https://github.com/luan03/luan03.github.io.git
git push -u origin master
touch nomeArquivo.extensao
git config --global core.editor "'C:\Program Files\Sublime Text 2\sublime_text.exe' -w"
git config - l
//para mostrar as configurações do seu git
git config --global core.editor "'C:\Program Files\Sublime Text 2\sublime_text.exe' -multiInst -nosession -noPlugin"
cat index.html
// visualizar o arquivo
$ git config --global user.name "Jon Loeliger"
$ git config --global user.email "[email protected]"
/*
****** Correr para terminar estudos de modularizacao e Front End Alto Nível. ******
***** Dê aos seus Seletores de um contexto. $('.class', '#class-container'); ******
* Evite implícitas Universal Seletores. Quando você deixar de fora o seletor, o seletor universal (*) ainda está implícita: $('div.someclass input:radio'); // GOOD
* Não Desça múltiplas IDs ou ninho ao selecionar um ID. ID-somente seleções são tratadas usando document.getElementById () por isso não misturá-los com outros seletores.
*
* Sempre retire qualquer elemento existente antes da manipulação e anexá-lo de volta depois de manipulá-lo:
* var $myList = $("#list-container > ul").detach();
* $myList.appendTo("#list-container");
*
* Use concatenação ou Array.join () acabou. Append () | nao fazer o append no iterator.
*
* Verificar existencia dos elementos antes de usa los:
* var $mySelection = $("#nosuchthing");
* if ($mySelection.length) {
* $mySelection.slideUp();
* }
*
*
*
*
* function myLinkClickHandler(){...}
* $("#myLink").on("click", myLinkClickHandler);
*
*
*
*
*
*
*
* Evite usar. GetJson () ou. Get (), basta usar o $. Ajax () como que é o que é chamado internamente.
*
*
* NÃO coloque os parâmetros de solicitação na URL, enviá-los usando definição objeto de dados:
* data: { param1: test1, param2: test2 }
*
* Tente especificar a configuração dataType por isso é mais fácil saber que tipo de dados que você está trabalhando.
* dataType: "json";
*
* Use manipuladores de eventos delegados para anexar eventos para o conteúdo carregado usando Ajax.
* Eventos delegados têm a vantagem de que eles podem processar eventos a partir de elementos descendentes que são adicionados ao documento em um momento posterior (exemplo Ajax).
* Não excesso de fazer os efeitos de animação até impulsionada pelas exigências UX.
*
* Tente usar show/hide, toggle and slideUp/slideDown para alternar elementos.
* Tente usar animações pré-definidas durações de "slow", "fast" ou 400 (para médio).
*
* Escolha sempre um plugin com um bom suporte, documentação, testes e apoio da comunidade.
* Verifique a compatibilidade de plug-in com a versão do jQuery que você está usando.
*
* Use encadeamento como uma alternativa para o cache variável e várias chamadas de selecção: $("#myDiv").addClass("error").show();
*
* Sempre que a cadeia cresce mais de 3 ligações ou fica complicado por causa da atribuição de evento, use quebras de linha apropriadas e recuo para tornar o código legível.
* $("#myLink")
.addClass("bold")
.on("click", myClickHandler)
.on("mouseover", myMouseOverHandler)
.show();
*
* Para longas cadeias é aceitável para armazenar em cache objetos intermediários em uma variável.
*
* Use literais de objetos para os parâmetros.
$myLink.attr({
href: "#",
title: "my link",
rel: "external"
});
*
* Não misturar CSS com Javascript
* NÃO use métodos depreciados.
* Combine com jQuery JavaScript nativo quando necessário.
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
* modularizar includes (javascript, css, html).
*
*/
/* TDD javascript */
- yui docjs
- mocha js unit tests
- teste de unidade (código)
- TDD (teste antes do código)
Oque testar?
- condição
- laço
- operação
- polimorfismo
- excessões
ciclo de teste:
- faz o teste
- rode o teste e veja falhar
- mudança
- rode denovo
- refatore
dicas:
- listar os testes da tarefa.
- criar os teste um a um.
- se identificar um novo teste (inserir ao final da lista)
- na hora da refatoração lembrar do SOLID.
- testes em excesso (CUIDADO)
- (começe pelo assert)
* todos os testes devem ser independentes
* desacoplar o código.
- tem que ser fácil de ler.
* o código deve contar uma historinha.
* dados realistas.
- não usar constante.
utils - tem muitas responsabilidades (vamos mata-lo).
usar code sniffer. (uma boa prática)
- fazer code coverage
- fazer os mocks (pensar na performance)
/* Refatoração */
** pegar as anotações.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment