<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ca">
	<id>http://wiki.joanillo.org/index.php?action=history&amp;feed=atom&amp;title=JSDoc%3A_documentaci%C3%B3_amb_Javascript</id>
	<title>JSDoc: documentació amb Javascript - Historial de revisió</title>
	<link rel="self" type="application/atom+xml" href="http://wiki.joanillo.org/index.php?action=history&amp;feed=atom&amp;title=JSDoc%3A_documentaci%C3%B3_amb_Javascript"/>
	<link rel="alternate" type="text/html" href="http://wiki.joanillo.org/index.php?title=JSDoc:_documentaci%C3%B3_amb_Javascript&amp;action=history"/>
	<updated>2026-08-29T23:52:46Z</updated>
	<subtitle>Historial de revisió per a aquesta pàgina del wiki</subtitle>
	<generator>MediaWiki 1.34.2</generator>
	<entry>
		<id>http://wiki.joanillo.org/index.php?title=JSDoc:_documentaci%C3%B3_amb_Javascript&amp;diff=298788&amp;oldid=prev</id>
		<title>Joan a 23:59, 27 març 2022</title>
		<link rel="alternate" type="text/html" href="http://wiki.joanillo.org/index.php?title=JSDoc:_documentaci%C3%B3_amb_Javascript&amp;diff=298788&amp;oldid=prev"/>
		<updated>2022-03-27T23:59:13Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;ca&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Versió més antiga&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revisió del 23:59, 27 març 2022&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot; &gt;Línia 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Línia 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;__TOC__&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=Introducció=&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=Introducció=&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[Fitxer:Jsdoc documentacio.png | thumbnail]]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;https://jsdoc.app&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;https://jsdoc.app&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Amb JSDoc podem documentar fàcilment els nostres projectes javascript.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Amb JSDoc podem documentar fàcilment els nostres projectes javascript.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Joan</name></author>
		
	</entry>
	<entry>
		<id>http://wiki.joanillo.org/index.php?title=JSDoc:_documentaci%C3%B3_amb_Javascript&amp;diff=298786&amp;oldid=prev</id>
		<title>Joan: /* Generar la documentació */</title>
		<link rel="alternate" type="text/html" href="http://wiki.joanillo.org/index.php?title=JSDoc:_documentaci%C3%B3_amb_Javascript&amp;diff=298786&amp;oldid=prev"/>
		<updated>2022-03-27T23:58:17Z</updated>

		<summary type="html">&lt;p&gt;&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Generar la documentació&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;ca&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Versió més antiga&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revisió del 23:58, 27 març 2022&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l180&quot; &gt;Línia 180:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Línia 180:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;$ jsdoc -d square-doc main.js ./modules/canvas.js ./modules/square.js&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;$ jsdoc -d square-doc main.js ./modules/canvas.js ./modules/square.js&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;A dins la carpeta tenim el fitxer index.html que és el punt d'entrada de tota la documentació.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;A dins la carpeta tenim el fitxer index.html que és el punt d'entrada de tota la documentació&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;, en format HTML&lt;/ins&gt;.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Joan</name></author>
		
	</entry>
	<entry>
		<id>http://wiki.joanillo.org/index.php?title=JSDoc:_documentaci%C3%B3_amb_Javascript&amp;diff=298785&amp;oldid=prev</id>
		<title>Joan: Es crea la pàgina amb «=Introducció= https://jsdoc.app Amb JSDoc podem documentar fàcilment els nostres projectes javascript.  A l'assignatura de M06 hem fet la petita pràctica de program...».</title>
		<link rel="alternate" type="text/html" href="http://wiki.joanillo.org/index.php?title=JSDoc:_documentaci%C3%B3_amb_Javascript&amp;diff=298785&amp;oldid=prev"/>
		<updated>2022-03-27T23:57:14Z</updated>

		<summary type="html">&lt;p&gt;Es crea la pàgina amb «=Introducció= https://jsdoc.app Amb JSDoc podem documentar fàcilment els nostres projectes javascript.  A l&amp;#039;assignatura de M06 hem fet la petita pràctica de program...».&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Pàgina nova&lt;/b&gt;&lt;/p&gt;&lt;div&gt;=Introducció=&lt;br /&gt;
https://jsdoc.app&lt;br /&gt;
Amb JSDoc podem documentar fàcilment els nostres projectes javascript.&lt;br /&gt;
&lt;br /&gt;
A l'assignatura de M06 hem fet la petita pràctica de programació amb mòduls: canvas, quadrats i cercles. Anem a documentar els mòduls i el codi que hem creat.&lt;br /&gt;
=Codi amb comentaris=&lt;br /&gt;
El codi documentat queda de la següent manera:&lt;br /&gt;
&lt;br /&gt;
script ''main.js'':&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import { create, createReportList } from './modules/canvas.js';&lt;br /&gt;
import { name, draw, reportArea, reportPerimeter } from './modules/square.js';&lt;br /&gt;
import randomSquare from './modules/square.js';&lt;br /&gt;
&lt;br /&gt;
/** variable myCanvas: creem el quadrat principal */&lt;br /&gt;
let myCanvas = create('myCanvas', document.body, 480, 320);&lt;br /&gt;
&lt;br /&gt;
/** variable reportList: creem la llista on mostrarem la informació */&lt;br /&gt;
let reportList = createReportList(myCanvas.id);&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
variable square1: creem el primer quadrat&lt;br /&gt;
*/&lt;br /&gt;
let square1 = draw(myCanvas.ctx, 50, 50, 100, 'blue');&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
reportem informació sobre square1&lt;br /&gt;
*/&lt;br /&gt;
reportArea(square1.length, reportList);&lt;br /&gt;
reportPerimeter(square1.length, reportList);&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
variable square1: creem el segon quadrat de tipus aleatori&lt;br /&gt;
*/&lt;br /&gt;
let square2 = randomSquare(myCanvas.ctx);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
script ''canvas.js'':&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/** @module canvas */&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
 * Crea el canvas.&lt;br /&gt;
 * @param {string} L'identificador que tindrà el canvas.&lt;br /&gt;
 * @param {ele} parent - referència al parent que contindrà el canvas.&lt;br /&gt;
 * @param {int} width - Amplada del canvas.&lt;br /&gt;
 * @param {int} height - Altura del canvas.&lt;br /&gt;
 * @return {obj} Retorna un objecte amb les propietats ctx com a referència del canvas que s'ha creat, i id del div que s'ha creat.&lt;br /&gt;
 */&lt;br /&gt;
function create(id, parent, width, height) {&lt;br /&gt;
  let divWrapper = document.createElement('div');&lt;br /&gt;
  let canvasElem = document.createElement('canvas');&lt;br /&gt;
  parent.appendChild(divWrapper);&lt;br /&gt;
  divWrapper.appendChild(canvasElem);&lt;br /&gt;
&lt;br /&gt;
  divWrapper.id = id;&lt;br /&gt;
  canvasElem.width = width;&lt;br /&gt;
  canvasElem.height = height;&lt;br /&gt;
&lt;br /&gt;
  let ctx = canvasElem.getContext('2d');&lt;br /&gt;
&lt;br /&gt;
  return {&lt;br /&gt;
    ctx: ctx,&lt;br /&gt;
    id: id&lt;br /&gt;
  };&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
 * Crea un element ul, que servirà per contenir la llista amb informació del quadrat.&lt;br /&gt;
 * @param {wrapperId} wrapperId - El id del canvas al qual fem referència.&lt;br /&gt;
 * @return {listID} listID - Referència a la llista HTML que està creada.&lt;br /&gt;
 */&lt;br /&gt;
function createReportList(wrapperId) {&lt;br /&gt;
  let list = document.createElement('ul');&lt;br /&gt;
  list.id = wrapperId + '-reporter';&lt;br /&gt;
&lt;br /&gt;
  let canvasWrapper = document.getElementById(wrapperId);&lt;br /&gt;
  canvasWrapper.appendChild(list);&lt;br /&gt;
&lt;br /&gt;
  return list.id;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
export { create, createReportList };&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
script ''square.js'':&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/** @module square */&lt;br /&gt;
&lt;br /&gt;
/** El nom del mòdul. */&lt;br /&gt;
const name = 'square';&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
 * Dibuixar un quadrat.&lt;br /&gt;
 * @param {ctx} El context del canvas.&lt;br /&gt;
 * @param {int} length - Longitud del quadrat.&lt;br /&gt;
 * @param {int} x - Posició x del quadrat (superior esquerre).&lt;br /&gt;
 * @param {int} y - Posició y del quadrat (superior esquerre).&lt;br /&gt;
 * @param {string} El color de fons del quadrat.&lt;br /&gt;
 * @return {obj} Retorna un objecte amb les propietats length, x, y, color.&lt;br /&gt;
 */&lt;br /&gt;
function draw(ctx, length, x, y, color) {&lt;br /&gt;
  ctx.fillStyle = color;&lt;br /&gt;
  ctx.fillRect(x, y, length, length);&lt;br /&gt;
&lt;br /&gt;
  return {&lt;br /&gt;
    length: length,&lt;br /&gt;
    x: x,&lt;br /&gt;
    y: y,&lt;br /&gt;
    color: color&lt;br /&gt;
  };&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function random(min, max) {&lt;br /&gt;
   let num = Math.floor(Math.random() * (max - min)) + min;&lt;br /&gt;
   return num;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
 * Crea un element li, amb el contingut de l'àrea, i l'afegeix a la llista existent.&lt;br /&gt;
 * @param {int} lenght - Longitud del quadrat.&lt;br /&gt;
 * @param {listID} listID - Referència a la llista HTML que està creada.&lt;br /&gt;
 */&lt;br /&gt;
function reportArea(length, listId) {&lt;br /&gt;
  let listItem = document.createElement('li');&lt;br /&gt;
  listItem.textContent = `${name} area is ${length * length}px squared.`&lt;br /&gt;
&lt;br /&gt;
  let list = document.getElementById(listId);&lt;br /&gt;
  list.appendChild(listItem);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
 * Crea un element li, amb el contingut del perímetre, i l'afegeix a la llista existent.&lt;br /&gt;
 * @param {int} lenght - Longitud del quadrat.&lt;br /&gt;
 * @param {listID} listID - Referència a la llista HTML que està creada.&lt;br /&gt;
 */&lt;br /&gt;
function reportPerimeter(length, listId) {&lt;br /&gt;
  let listItem = document.createElement('li');&lt;br /&gt;
  listItem.textContent = `${name} perimeter is ${length * 4}px.`&lt;br /&gt;
&lt;br /&gt;
  let list = document.getElementById(listId);&lt;br /&gt;
  list.appendChild(listItem);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
 * Dibuixar un quadrat aleatori.&lt;br /&gt;
 * @param {ctx} El context del canvas.&lt;br /&gt;
 * @return {obj} Retorna un objecte amb les propietats length, x, y, color, que prenen valors aleatoris.&lt;br /&gt;
 */&lt;br /&gt;
function randomSquare(ctx) {&lt;br /&gt;
  let color1 = random(0, 255);&lt;br /&gt;
  let color2 = random(0, 255);&lt;br /&gt;
  let color3 = random(0, 255);&lt;br /&gt;
  let color = `rgb(${color1},${color2},${color3})`&lt;br /&gt;
  ctx.fillStyle = color;&lt;br /&gt;
&lt;br /&gt;
  let x = random(0, 480);&lt;br /&gt;
  let y = random(0, 320);&lt;br /&gt;
  let length = random(10, 100);&lt;br /&gt;
  ctx.fillRect(x, y, length, length);&lt;br /&gt;
&lt;br /&gt;
  return {&lt;br /&gt;
    length: length,&lt;br /&gt;
    x: x,&lt;br /&gt;
    y: y,&lt;br /&gt;
    color: color&lt;br /&gt;
  };&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
export { name, draw, reportArea, reportPerimeter };&lt;br /&gt;
export default randomSquare;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
=Generar la documentació=&lt;br /&gt;
Per generar la documentació, fem servir l'eina ''jsdoc''. La instal·lem amb ''npm'' de forma global:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ npm install -g jsdoc&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
I per generar la documentació en la carpeta ''square-doc'':&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ jsdoc -d square-doc main.js ./modules/canvas.js ./modules/square.js&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
A dins la carpeta tenim el fitxer index.html que és el punt d'entrada de tota la documentació.&lt;/div&gt;</summary>
		<author><name>Joan</name></author>
		
	</entry>
</feed>