Diferència entre revisions de la pàgina «M06 UF1A2. Teoria»

De wikijoan
Salta a la navegació Salta a la cerca
Línia 47: Línia 47:
 
[ 'xica', 'pica', 'pellerica' ]
 
[ 'xica', 'pica', 'pellerica' ]
 
</pre>
 
</pre>
 +
==Exemple 2: joc de proves complet==
 +
<pre>
 +
var reDni = /^\d{8}[A-Z]$/
 +
 +
console.log(reDni.test('38128574E')); //true
 +
console.log(reDni.test('381574E')); //false
 +
console.log(reDni.test('38128574234E')); //false
 +
console.log(reDni.test('38128574')); //false
 +
console.log(reDni.test('38128574EE')); //false
 +
console.log(reDni.test('E38128574E')); //false
 +
console.log(reDni.test('381285ddd74E')); //false
 +
console.log(reDni.test('38128574e')); //false
 +
</pre>
 +
Si ho posem en un script (joc_proves_complet_dni.js) funciona com un test unitari:
 +
<pre>
 +
$ node joc_proves_complet_dni.js
 +
</pre>
 +
Això dóna peu a parlar de '''tests unitaris'''.
  
 
=T10. Arrays (col·leccions indexades)=
 
=T10. Arrays (col·leccions indexades)=

Revisió del 06:59, 19 oct 2021

Introducció

Continuem avançant amb la sintaxi de Javascript. Hem de veure objectes, arrays, expressions regulars i moltes més coses.

Treballarem també amb tests unitaris per comprovar de forma automàtica el codi que generem amb Javascript.

Recursos

Donarem preferència al següent recurs online:

Però també farem referència constant a aquest curs online:

scripts de classe

T9. Expressions regulars

Referència:

També:

Exemple 1

var cad = "una polla xica pica pellerica va posar sis ous";

Volem trobar les paraules que contenen ic:

var re = /ic/g;
console.log(cad.match(re));
[ 'ic', 'ic', 'ic' ]
console.log(cad.match(re).length);
3

//amb això podem respondre a la pregunta de quantes paraules tenen ic, però volem saber quines són aquestes paraules, que aquestes paraules compleixin un criteri:

re = /\w+/g; //amb aquesta podem trobar totes les paraules
cad.match(re);
[
  'una',       'polla',
  'xica',      'pica',
  'pellerica', 'va',
  'posar',     'sis',
  'ous'
]

//la solució és
re = /\w+ic\w+/g;
cad.match(re);
[ 'xica', 'pica', 'pellerica' ]

Exemple 2: joc de proves complet

var reDni = /^\d{8}[A-Z]$/

console.log(reDni.test('38128574E')); //true
console.log(reDni.test('381574E')); //false
console.log(reDni.test('38128574234E')); //false
console.log(reDni.test('38128574')); //false
console.log(reDni.test('38128574EE')); //false
console.log(reDni.test('E38128574E')); //false
console.log(reDni.test('381285ddd74E')); //false
console.log(reDni.test('38128574e')); //false

Si ho posem en un script (joc_proves_complet_dni.js) funciona com un test unitari:

$ node joc_proves_complet_dni.js

Això dóna peu a parlar de tests unitaris.

T10. Arrays (col·leccions indexades)

T11. Treballar amb objectes

T12. Keyed collections (col·leccions amb clau)

T13. Javascript avançat

  • Promises
  • Interadors i generadors
  • Javascript modules

creat per Joan Quintana Compte, octubre 2021