In Javascript non esiste il concetto di access specifier e le classi vengono definite da funzioni. Tuttavia, una sorta di incapsulamento puņ essere ottenuto tramite l'utilizzo di qualche artificio, come riportato nell'esempio seguente:
function Parallelepipedo()
{
var lunghezza = 5;
var altezza = 10;
var larghezza 4;
this.SetLunghezza = SetLunghezza;
this.SetLarghezza = SetLarghezza;
this.SetAltezza = SetAltezza;
this.MostraVolume = DisplayVolume;
function DisplayVolume()
{
alert( lunghezza * altezza * larghezza );
}
function SetLunghezza(lun)
{
lunghezza = lun;
}
function SetLarghezza( lar )
{
larghezza = lar;
}
function SetAltezza( alt )
{
altezza = alt;
}
}
var Parallelepipedo1 = new Parallelepipedo();
var Parallelepipedo2 = new Parallelepipedo();
Parallelepipedo1.SetLarghezza( 10 );
Parallelepipedo1.SetLunghezza( 5 );
Parallelepipedo1.SetAltezza( 6 );
Parallelepipedo2.SetLarghezza( 7 );
Parallelepipedo2.SetLunghezza( 2 );
Parallelepipedo2.SetAltezza( 3 );
Parallelepipedo1.MostraVolume(); // visualizza: 300
Parallelepipedo2.MostraVolume(); // visualizza: 42