Salta el contingut

UT03 Model d’objectes predefinits a JavaScript.

1.- Objectes de més alt nivell a Javascript.

Introducció

Anam a aprofundir en els objectes bàsics i de més alt nivell de JavaScript. Aquests objectes, els trobareu en pràcticament la majoria d'aplicacions que faceu amb JavaScript, per la qual cosa serà fonamental, que tingui molt clares les característiques i diferents funcionalitats que aquests objectes li aportaran a les seves aplicacions.

Una pàgina web, és un document HTML que serà interpretat pels navegadors de forma gràfica, però que també ha de permetre'n l'accés al codi font.

El Model d'Objectes del Document (DOM), permet veure el mateix document d'una altra manera, descrivint el contingut del document com un conjunt d'objectes, sobre els quals un programa de Javascript pot interactuar.

Segons el W3C, el Model d'Objectes del Document és una interfície de programació d'aplicacions (API), per a documents vàlids HTML i ben construïts XML. Defineix l’estructura lògica dels documents, i la manera com s’accedeixen i es manipulen.

Ara que ja has vist en la unitat anterior, els fonaments de la programació, anem a aprofundir una mica més pel que fa als objectes, que podrem col·locar en la majoria dels nostres documents.

Definim com a objecte, una entitat amb una sèrie de propietats que defineixen el seu estat, i uns mètodes (funcions), que actuen sobre aquestes propietats.

La forma d’accedir a una propietat d’un objecte és la següent:

nomObjecte.propietat

La forma d’accedir a un mètode d’un objecte és la següent:

nomObjecte.metode([paràmetres opcionals])

També podem referenciar una propietat d’un objecte, pel seu índex en la creació. Els índexs comencen per 0.

En aquesta unitat, ens enfocarem en objectes d'alt nivell, que trobaràs freqüentment en les teves aplicacions de JavaScript: window, location, navigator i document. L'objectiu, no és només indicar-te les nocions bàsiques perquè puguis començar a realitzar tasques senzilles, sinó també, el preparar-te per aprofundir en les propietats i mètodes, gestors d'esdeveniments, etc. que trobaràs en unitats posteriors.

Només veurem les propietats bàsiques, i els mètodes dels objectes esmentats anteriorment.

Et mostrem aquí el gràfic del model d'objectes d'alt nivell, per a tots els navegadors que permetin fer servir JavaScript.

portada

És molt important que tinguis aquest gràfic en ment perquè ha de ser la guia al llarg de tota aquesta unitat.

Alerta

En aquesta unitat no parlarem de l'ús de frames ja que el seu ús està totalment desaconsellat per motius d'accessibilitat i usabilitat, per la qual cosa et recomanem no usar-los.

1.1.- Objecte window.

DWEC03_CONT_R02_Ventanas
Everaldo Coelho (GNU/GPL)

En la jerarquia d'objectes, tenim a la part superior l'objecte window.

Aquest objecte està situat justament aquí, perquè és el contenidor principal de tot el contingut que es visualitza al navegador. Tan aviat com s'obre una finestra (window) al navegador, fins i tot encara que no s'hi carregui cap document, aquest objecte window ja estarà definit en memòria.

A més de la secció de contingut de l’objecte window, que és justament on es carregaran els documents, el camp d’influència d’aquest objecte, abasta també les dimensions de la finestra, així com tot el que envolta l’àrea de contingut: les barres de desplaçament, barra d’eines, barra d’estat, etc.

Com es veu en el gràfic de la jerarquia d'objectes, sota l'objecte window tenim altres objectes com el navigator, screen, history, location i l'objecte document. Aquest objecte document serà el que contindrà tota la jerarquia d’objectes, que tinguem dins la nostra pàgina HTML.

portada

Atenció

Atenció En els navegadors més moderns, els usuaris tenen la possibilitat d'obrir les pàgines tant en noves pestanyes dins d'un navegador, com en noves finestres de navegador. Per a JavaScript tant les finestres de navegador, com les pestanyes, són tots dos objectes window.

Accés a propietats i mètodes.

Per accedir a les propietats i mètodes de l'objecte window, ho podrem fer de diferents formes, depenent més del nostre estil, que de requeriments sintàctics. Així, la forma més lògica i comuna de realitzar aquesta referència, inclouria l’objecte window tal com es mostra en aquest exemple:

 window.nombrePropietat  
 window.nomMétodo([paràmetres])

Com pots veure, els paràmetres van entre corxets, indicant que són opcionals i que dependran del mètode al qual estem cridant.

Un objecte window també es podrà referenciar mitjançant la paraula self, quan estem fent la referència des del propi document contingut en aquesta finestra:

 self.nombrePropietat  
 self.nomMétodo([paràmetres])

Podrem fer servir qualsevol de les dues referències anteriors, però intentarem deixar la paraula reservada self, per a scripts més complexos en què tinguem múltiples marcs i finestres.

Atès que l'objecte window sempre estarà present quan executem els nostres scripts, podrem ometre'l, en referències als objectes dins d'aquesta finestra. Així que, si escrivim:

 nomPropietat  
 nomMétodo([paràmetres])

També funcionaria sense cap problema, perquè s'assumeix que aquestes propietats o mètodes, són de l'objecte de més jerarquia (l'objecte window) en el qual ens trobem.

Cites per pensar

"Només tancant les portes darrere d'un mateix, s'obren finestres cap al pervenir."

SAGAN, Françoise.

1.1.1.- Gestió de finestres.

DWEC03_CONT_R14_String
Everaldo Coelho (GNU/GPL)

Un script no crearà mai la finestra principal d'un navegador. És l'usuari, qui realitza aquesta tasca obrint una URL al navegador o un arxiu des del menú d'obrir. Però tanmateix, un script que estigui executant-se en una de les finestres principals del navegador, si que podrà crear o obrir noves sub-finestres.

El mètode que genera una nova finestra és window.open(). Aquest mètode conté fins a tres paràmetres, que defineixen les característiques de la nova finestra: la URL del document a obrir, el nom d'aquesta finestra i la seva aparença física (tamany, color,etc.).

Per exemple, si considerem la següent instrucció que obre una nova finestra d’una mida determinada i amb el contingut d’un document HTML:

let subVentana = window.open("nueva.html", "nova", "height=800, width=600");

L'important d'aquesta instrucció, és l'assignació que hem fet en la variable subVentana. D'aquesta manera podrem al llarg del nostre codi, referenciar a la nova finestra des de l'script original de la finestra principal. Per exemple, si volguéssim tancar la nova finestra des del nostre script, simplement hauríem de fer: subVentana.

Aquí si que cal especificar subVentana, ja que si escrivíssim window.close(), self.close() o close() estaríem intentant tancar la nostra pròpia finestra (prèvia confirmació), però no la subVentana que creiem en els passos anteriors.

Vegeu el següent exemple que permet obrir i tancar una sub-finestra:

<!DOCTYPE html>
<html>
<head>
    <meta http-equiv="content-type" content="text/html; charset = utf-8">
    <title>Apertura i Tancament de Finestres</title>
    <script type="text/javascript">
        const inicialitzar = () => {
            document.getElementById("crear-finestra").onclick = crearNova;
            document.getElementById("tancar-finestra").onclick = tancarNova;
        }

        let novaFinestra;

        const crearNova = () => {
            novaFinestra = window.open("https://docencia.xaviersastre.cat", "", "height = 400,width = 800");
        }

        const tancarNova = () => {
            if (novaFinestra) {
                novaFinestra.close();
                novaFinestra = null;
            }
        }
    </script>
</head>
<body onLoad="inicialitzar()">
<h1> Obrim i tanquem finestres</h1>
<form>
    <input type="button" id="crear-finestra" value="Crear Nova Finestra">
    <input type="button" id="tancar-finestra" value="Tancar Nova Finestra">
</form>
</body>
</html>

1.1.2.- Propietats i mètodes.

L'objecte window representa una finestra oberta en un navegador. Si un document conté marcs (\<frame> o \<iframe>), el navegador crea un objecte window per al document HTML, i un objecte window addicional per a cada marc.

DWEC03_CONT_R03_Ventana_abierta
quinn.anya CC BY-SA

Propietats de l’objecte Window

Propietat Descripció
closed Retorna un valor Boolean indicant quan una finestra ha estat tancada o no.
defaultStatus Ajusta o retorna el valor per defecte de la barra d’estat d’una finestra.
document Retorna l’objecte document per a la finestra.
frames Retorna un vector de tots els marcs (inclosos iframes) de la finestra actual.
history Retorna l’objecte history de la finestra.
length Retorna el nombre de frames (incloent-hi iframes) que hi ha a dins d'una finestra.
location Retorna la Localització de l'objecte d'urL del fitxer.
name Ajusta o retorna el nom d’una finestra.
navigator Retorna l’objecte navigator d’una finestra.
opener Retorna la referència a la finestra que va obrir la finestra actual.
parent Retorna la finestra pare de la finestra actual.
self Retorna la finestra actual.
status Ajusta el text de la barra d’estat d’una finestra.

Mètodes de l’objecte Window

Mètode Descripció
alert() Mostra una finestra emergent d'alerta i un botó d'acceptar.
blur() Elimina el focus de la finestra actual.
clearInterval() Reseteja el cronòmetre ajustat amb setInterval().
setInterval() Crida a una funció o avalua una expressió en un interval especificat (en mil·lisegons).
close() Tanca la finestra actual.
confirm() Mostra una finestra emergent amb un missatge, un botó d'acceptar i un botó de cancel·lar.
focus() Col·loca el focus en la finestra actual.
open() Obre una nova finestra de navegació.
prompt() Mostra una finestra de diàleg per introduir dades.

Has de conèixer

El següent enllaç amplia informació sobre l'objecte Window i totes les seves propietats i mètodes.

Més informació i exemples sobre l'objecte Window.

1.2.- Objecte location.

L’objecte location conté informació referent a la URL actual.

Aquest objecte, és part de l’objecte window i hi accedeixen a través de la propietat window.location.

DWEC03_CONT_R04_URL
chrisdlugosz CC BY

L’objecte location conté informació referent a la URL actual.

Aquest objecte, és part de l’objecte window i hi accedeixen a través de la propietat window.location.

Propietats de l’objecte Location

Propietat Descripció
hash Cadena que conté el nom de l’enllaç, dins la URL.
host Cadena que conté el nom del servidor i el número del port, dins la URL.
hostname Cadena que conté el nom de domini del servidor (o l'adreça IP), dins la URL.
href Cadena que conté la URL completa.
pathname Cadena que conté el camí al recurs, dins la URL.
port Cadena que conté el número de port del servidor, dins la URL.
protocol Cadena que conté el protocol utilitzat (incloent-hi els dos punts), dins de la URL.
search Cadena que conté la informació passada en una trucada a un script, dins de la URL.

Mètodes de l’objecte Location

assign() Carrega un nou document.
reload() Torna a carregar la URL especificada en la propietat href de l’objecte location.
replace() Reemplaça l'historial actual mentre carrega la URL especificada en cadenaURL.

Cites per pensar

"Mil rutes s'allunyen de la fi escollida, però n'hi ha una que hi arriba."

MONTAIGNE, Michel de.

Has de conèixer

El següent enllaç amplia informació sobre l'objecte Location i totes les seves propietats i mètodes.

Més informació i exemples sobre l'objecte Location.

1.3.- Objecte navigator.

Aquest objecte navigator, conté informació sobre el navegador que estem utilitzant quan obrim una URL o un document local.

DWEC03_CONT_R05_Navigator
Caitlinator CC BY

Propietats de l’objecte Navigator

Propietat Descripció
appCodeName Cadena que conté el nom en codi del navegador.
appName Cadena que conté el nom del client.
appVersion Cadena que conté informació sobre la versió del client.
cookieEnabled Determina si les cookies estan o no habilitades al navegador.
platform Cadena amb la plataforma sobre la qual s'està executant el programa client.
userAgent Cadena que conté la capçalera completa de l’agent enviada en una petició HTTP. Conté la informació de les propietats appCodeName i appVersion.

Mètodes de l’objecte Navigator

Mètode Descripció
javaEnabled() Retorna true si el client permet la utilització de Java, en cas contrari, retorna false.

Has de conèixer

El següent enllaç amplia informació sobre l'objecte Navigator i totes les seves propietats i mètodes.

Més informació i exemples sobre l'objecte Navigator.

1.4.- Objecte document.

DWEC03_CONT_R07_Document
infilmity CC BY-NC-SA

Cada document carregat en una finestra del navegador, serà un objecte de tipus document.

L’objecte document proporciona als scripts, l’accés a tots els elements HTML dins d’una pàgina.

Aquest objecte forma part a més de l'objecte window, i pot ser accedit a través de la propietat window.document o directament document (ja que podem ometre la referència a la window actual).

Col·leccions de l'objecte Document

Col·lecció Descripció
anchors[] És un vector que conté tots els hiperenllaços del document.
forms[] És un vector que conté tots els formularis del document.
images[modifica] És un vector que conté totes les imatges del document.
links[] És un vector que conté tots els enllaços del document.

Propietats de l’objecte Document

Propietat Descripció
cookie Retorna tots els noms/valors de les cookies en el document.
domain Cadena que conté el nom de domini del servidor que va carregar el document.
referrer Cadena que conté la URL del document des del qual arribem al document actual.
title Retorna o ajusta el títol del document.
URL Retorna la URL completa del document.

Propietats de l’objecte Document

Mètode Descripció
close() Tanca el flux obert prèviament amb document.
getElementById() Per accedir a un element identificat per l’id escrit entre parèntesis.
getElementsByName() Per accedir als elements identificats per l’atribut name escrit entre parèntesis.
getElementsByTagName() Per accedir als elements identificats pel tag o l’etiqueta escrita entre parèntesis.
open() Obre el flux d’escriptura per poder utilitzar document.write() o document.writeln en el document.
write() Per poder escriure expressions HTML o codi de JavaScript dins d’un document.
writeln() El mateix que write() però afegeix un salt de línia al final de cada instrucció.

Has de conèixer

El següent enllaç amplia informació sobre l'objecte Document totes les seves propietats i mètodes.

Més informació i exemples sobre l'objecte Document.

2.- Objectes nadius a Javascript.

Aquests objectes, fan referència al treball amb cadenes de text, operacions matemàtiques, nombres, valors booleans i treball amb dates i hores.

Aquest li serà molt útil per realitzar la seva aplicació ja que haurà de realitzar diferents tipus de conversions de dades, treballar intensivament amb cadenes i per suposat amb dates i hores.

Tot i que no hem vist com crear objectes, sí que ja hem donat unes pinzellades al que són els objectes, propietats i mètodes.

En aquesta secció vam fer una ullada a objectes que són nadius a JavaScript, això és, allò que JavaScript ens dona, llestos per a la seva utilització en la nostra aplicació.

Enxampem una ullada als objectes String, Math, Number, Boolean i Date.

Cites per pensar

"Si m'haguessin fet objecte seria objectiu, però em van fer subjecte."

BERGAMÍN, José.

Reflexiona

T'has parat a pensar alguna vegada que el nostre món està envoltat d'objectes arreu?

Saps que pràcticament, tots aquests objectes tenen algunes propietats com poden ser mida, color, pes, tipus de corrent que fan servir, temperatura, tipus de combustible, etc.?

Saps que també podem realitzar accions amb aquests objectes, com poden ser encendre, apagar, moure, obrir, tancar, pujar temperatura, baixar temperatura, marcar nombre, penjar, etc.?

2.1.- Objecte String.

DWEC03_CONT_R13_Cadenas
faccig (CC BY-SA)

Una cadena (string) consta d'un o més caràcters de text, envoltats de cometes simples o dobles; dona igual que usem ja que es considerarà una cadena de tota manera, però en alguns casos resulta més còmode l'ús d'unes o altres.

Recorda que de com definir les cadenes ja hem parlat i que no se t'oblidin les plantilles de cadenes que et fan molt fàcil la seva composició en comptes d'estar concatenant que de vegades resulta engreixat.

Caràcters especials o caràcters d’escapament.

La forma en què es creen les cadenes a JavaScript, fa que quan haguem d'emprar certs caràcters especials en una cadena de text, haguem d'escapar-los, emprant el símbol \ seguit del caràcter.

Veiem aquí un llistat dels caràcters especials o d'escapament a JavaScript:

Caràcters d’escapament i especials en JavaScript

Símbols Explicació
\" Cometes dobles.
\' Comella simple.
\ Barra inclinada.
\b Reculada.
\t Tabulador.
\n Nova línia.
\r Salt de línia.
\f Avanç de pàgina.

Has de conèixer

El següent enllaç amplia informació sobre l'objecte String i totes les seves propietats i mètodes.

Més informació i exemples sobre l'objecte String.

2.1.1.- Propietats i mètodes de l’objecte String.

DWEC03_CONT_R14_String
Josep Ma. Rosell (CC BY)

Per crear un objecte String ho podrem fer de les formes:

let cadena1 = new String('Primera cadena');  
let cadena2 = "Segona cadena";  
let cadena3 = 'Tercera cadena';  
let totesCadenes = '${cadena1} \- ${cadena2} \- ${cadena3}';

És a dir, cada vegada que tinguem una cadena de text, en realitat és un objecte String que té propietats i mètodes:

 cadena.propietat;  
 cadena.metode( [paràmetres] );

Propietats de l’objecte String

Propietat Descripció
length Conté la longitud d’una cadena.

Mètodes de l’objecte String

Mètodes Descripció
charAt() Retorna el caràcter especificat per la posició que s’indica entre parèntesis.
charCodeAt() Retorna l’Unicode del caràcter especificat per la posició que s’indica entre parèntesis.
concat() Uneix una o més cadenes i retorna el resultat d'aquesta unió.
fromCharCode() Converteix valors Unicode a caràcters.
indexOf() Retorna la posició de la primera ocurrència del caràcter buscat a la cadena.
lastIndexOf() Retorna la posició de l'última ocurrència del caràcter buscat a la cadena.
match() Busca una coincidència entre una expressió regular i una cadena i retorna les coincidències o null si no ha trobat res.
replaci() Busca una subcadena a la cadena i la reemplaça per la nova cadena especificada.
search() Busca una subcadena a la cadena i retorna la posició on es va trobar.
slice() Extreu una part de la cadena i retorna una nova cadena.
split() Divideix una cadena en un vector de subcadenes.
substr() Extreu els caràcters d’una cadena, començant en una determinada posició i amb el nombre de caràcters indicat.
substring() Extreu els caràcters d’una cadena entre dos índexs especificats.
toLowerCase() Converteix una cadena en minúscules.
toUpperCase() Converteix una cadena en majúscules.

És un estàndard de codificació de caràcters dissenyat per facilitar el tractament informàtic, transmissió i visualització correcta de textos realitzats en diferents idiomes, de tal manera que els caràcters especials de cada idioma siguin mostrats correctament independentment de la nostra configuració d’idioma local. El terme Unicode prové dels tres objectius perseguits: universalitat, uniformitat i unicitat.

2.2.- Objecte Math.

DWEC03_CONT_R14_String
conskeptical (CC BY-NC-SA)

Ja vam veure anteriorment algunes funcions, que ens permetien convertir cadenes a diferents formats numèrics (parseInt, parseFloat). A banda d'aquestes funcions, disposem d'un objecte Math a JavaScript, que ens permet realitzar operacions matemàtiques. L'objecte Math no posseeix un constructor (no ens permetrà per tant crear o instànciar nous objectes que siguin de tipus Math), per la qual cosa per anomenar les seves propietats i mètodes, ho farem anteposant Math a la propietat o el mètode. Per exemple:

let x = Math.PI;             // Retorna el número PI.  
let i = Math.sqrt( 16);      // Retorna l'arrel quadrada de 16\.

Propietats de l’objecte Math

Propietat Descripció
E Retorna el número Euler (aproximadament 2.718).
LN2 Retorna el logaritme neperià de 2 ( aproximadament 0.693).
LN10 Retorna el logaritme neperià de 10 ( aproximadament 2.302).
LOG2E Retorna el logaritme base 2 d'E ( aproximadament 1.442).
LOG10E Retorna el logaritme base 10 d'E ( aproximadament 0.434).
PI Retorna el número PI ( aproximadament 3.14159).
SQRT2 Retorna l'arrel quadrada de 2 ( aproximadament 1.414).

Mètodes de l’objecte Math

Mètode Descripció
abs( x) Retorna el valor absolut de x.
acos( x) Retorna l’arc de x, en radians.
asin( x) Retorna l’arcosè de x, en radians.
atan( x) Retorna l'arcotangent de x, en radians amb un valor entre -PI/2 i PI/2.
atan2( i,x) Retorna l'arcotangent del quocient dels seus arguments.
ceil( x) Retorna el número x arrodonit a l’alta cap al següent sencer.
cos( x) Retorna el cosin de x (x està en radians).
floor( x) Retorna el número x arrodonit a la baixa cap a l’anterior sencer.
log( x) Retorna el logaritme neperiant (base E) de x.
max( x,y,z,...,n) Retorna el nombre més alt dels que es passen com a paràmetres.
min( x,y,z,...,n) Retorna el nombre més baix dels que es passen com a paràmetres.
pow( x,y) Retorna el resultat de x elevat a i.
random() Retorna un número a l'atzar entre 0 i 1.
round( x) Arrodoneix x a l’enter més proper.
sense( x) Retorna el si de x (x està en radians).
sqrt( x) Retorna l’arrel quadrada de x.
tan( x) Retorna la tangent d'un angle.

2.3.- Objecte Number.

DWEC03_CONT_R14_String
Darwin BellCC BY

L'objecte Number es fa servir molt rarament, ja que per a la major part dels casos, JavaScript satisfà les necessitats del dia a dia amb els valors numèrics que emmagatzemem en variables. Però l'objecte Number conté alguna informació i capacitats molt interessants per a programadors més seriosos.

El primer, és que l’objecte Number conté propietats que ens indiquen el rang de nombres suportats en el llenguatge. El nombre més alt és 1.79E + 308; el nombre més baix és 2.22E-308. Qualsevol nombre més gran que el nombre més alt, serà considerat com a infinit positiu, i si és més petit que el nombre més baix, serà considerat infinit negatiu.

Els números i els seus valors estan definits internament a JavaScript, com a valors de doble precisió i de 64 bits.

L’objecte Number, és un objecte embolcall per a valors numèrics primitius.

Els objectes Number són creats amb new Number().

Propietats de l’objecte Number

Propietat Descripció
constructor Retorna la funció que va crear l'objecte Number.
MAX_VALUE Retorna el número més alt disponible a JavaScript.
MIN_VALUE Retorna el nombre més petit disponible a JavaScript.
NEGATIVE_INFINITY Representa infinit negatiu (es retorna en cas d'overflow).
POSITIVE_INFINITY Representa infinit positiu (es retorna en cas d'overflow).
prototype Permet afegir les nostres pròpies propietats i mètodes a un objecte.

Mètodes de l’objecte Number

toExponential( x) Converteix un número a la seva notació exponencial.
toFixed( x) Formatea un nombre amb x digits decimals després del punt decimal.
toPrecision(x) Formatea un número a la longitud x.
toString() Converteix un objecte Number en una cadena. Si se’n posa 2 com a paràmetre es mostrarà el número en binari. Si se’n posa 8 com a paràmetre es mostrarà el número en octal. Si se’n posa 16 com a paràmetre es mostrarà el número en hexadecimal.
valueOf() Retorna el valor primitiu d’un objecte Number.

És un sistema numèric en base 2 (usa 2 símbols) i utilitza els dígits 0 i 1 com a representació numèrica.

És un sistema numèric en base 8 (usa 8 símbols) i utilitza els dígits del 0 al 7 com a representació numèrica.

És un sistema numèric en base 16 (usa 16 símbols) i utilitza els dígits del 0 a 9 i les lletres de l'A a la F com a representació numèrica.

2.4.- Objecte Boolean.

L'objecte Boolean s'utilitza per convertir un valor no lògic, a un valor lògic (true o false).

DWEC03_CONT_R14_String
Darwin Bell (GNU/GPL)

Propietats de l’objecte Boolean

constructor Retorna la funció que va crear l'objecte Boolean.
prototype Et permetrà afegir propietats i mètodes a un objecte.

Mètodes de l’objecte Boolean

toString() Converteix un valor Boolean a una cadena i retorna el resultat.
valueOf() Retorna el valor primitiu d’un objecte Boolean.

Per saber-ne més

En el següent enllaç podràs trobar exemples sobre l'ús de l'objecte Boolean.

Més informació i exemples sobre l'objecte Boolean.

2.5.- Objecte Date.

DWEC03_CONT_R14_String
Darwin Bell (GNU/GPL)

L'objecte Date s'utilitza per treballar amb dates i hores. Els objectes Date es creen amb new Date().

Hi ha 4 formes d'instància (crear un objecte de tipus Date):

let dia1 = new Date();  
let dia2 = new Date(milisegundos);  
let dia3 = new Date(cadena de Data);  
let dia4 = new Date( any, mes, dia, hores, minuts, segons, mil·lisegons);
echo (dia1);
<div id="demo">Hola</div>
#demo { color: teal; }
console.log('Hola des de CodePen!');

Propietats de l’objecte Date

Propietat Descripció
constructor Retorna la funció que va crear l'objecte Date.
prototype Et permetrà afegir propietats i mètodes a un objecte.

Mètodes de l’objecte Date

getDate() Retorna el dia del mes (d'1-31).
getDay() Retorna el dia de la setmana (de 0-6).
getFullYear() Retorna l'any (4 dígits).
getHours() Torna l'hora (de 0-23).
getMilliseconds() Retorna els mil·lisegons (de 0-999).
getMinutes() Torna els minuts (de 0-59).
getMonth() Torna el mes (de 0-11).
getSeconds() Retorna els segons (de 0-59).
getTime() Retorna els mil·lisegons des de mitja nit de l'1 de Gener de 1970.
getTimezoneOffset() Retorna la diferència de temps entre GMT i l'hora local, en minuts.
getUTCDate() Retorna el dia del mes en base a l'hora UTC (d'1-31).
getUTCDay() Retorna el dia de la setmana en base a l'hora UTC (de 0-6).
getUTCFullYear() Retorna l'any en base a l'hora UTC (4 dígits).
setDate() Ajusta el dia del mes de l'objecte (d'1-31).
setFullYear() Ajusta l'any de l'objecte (4 dígits).
setHours() Ajusta l'hora de l'objecte (de 0-23).