Definindo pacotes em Javascript

Já mostrei como utilizar javascript de uma forma mais OO (orientada a objetos) nestes dois posts:

Agora irei mostrar uma forma de separar o código javascript em pacotes de uma forma parecida com a feita pela framework Yahoo! User Interface (YUI) Library, porém existem outras formas de se fazer isso como a feita pelo framework Dojo.

Exemplo utilizando YUI:

1
  YAHOO.example.calendar.cal1 = new YAHOO.widget.Calendar("cal1", "cal1Container");

Exemplo utilizando Dojo:

1
  dojo.require("dijit._Calendar");

E agora irei criar um exemplo simples, criarei uma classe chamada StringUtils que conterá um método trim e esta classe ficará no pacote br.com.rodrigolazoti.utils.

1
2
3
4
5
6
7
8
9
10
11
12
13
var br = br ? br : {}
     br.com = br.com ? br.com : {}
     br.com.rodrigolazoti = br.com.rodrigolazoti ? br.com.rodrigolazoti : {}
     br.com.rodrigolazoti.utils = br.com.rodrigolazoti.utils ? br.com.rodrigolazoti.utils : {}

  br.com.rodrigolazoti.utils.StringUtils = function() {

    this.trim = function( value ) {
      if (value==null) return null;
      else return value.replace(/ /g, "");
    }

  }

Testando o código:

1
2
var stringUtils = new br.com.rodrigolazoti.utils.StringUtils();
alert( stringUtils.trim( " a b c d e f " ) );

comments powered by Disqus