Use o modo restrito, sempre
// com modo restrito
function foo() {
'use strict';
nome = 'Encatec';
console.log(nome);
}
// Vai lançar uma exceção se "nome" não existir no escopo
// sem modo restrito
function bar() {
nome = 'ENCATEC';
console.log(nome);
}
// Vai executar normalmente, mas com um side effect: "nome" se tornou
// uma variável global =S
Variáveis com objetos jQuery (vindos de id) devem, preferencialmente, ter "$" no início do nome. P. ex:
var $myelem = $('#myelem');
Uma convenção extra: queries que resultam em mais de um elemento possuem $$ no início do nome.
var $$myclasses = $('.myclass');
Crie plugins sempre que o objeto é um código que aja sobre um objeto no DOM. A convenção é:
# Arquivo jquery.myplugin.js
(function($) {
'use strict';
$.fn.myplugin = function(args) {
// seu código aqui
};
})(jQuery);
# Arquivo foo.js
var foo = (function($) {
'use strict';
var foo = window.foo || {};
return foo;
})(jQuery);