56 lines
1.6 KiB
JavaScript
56 lines
1.6 KiB
JavaScript
|
/* eslint-disable no-unused-vars */
|
||
|
|
||
|
'use strict';
|
||
|
|
||
|
// //////////////////////////////////////////////////////////////////////////////
|
||
|
// Exercice : bases du langage et utilisation de la console
|
||
|
// //////////////////////////////////////////////////////////////////////////////
|
||
|
|
||
|
function fibonacci(n) {
|
||
|
if (!Number.isInteger(n) || n < 0) {
|
||
|
return undefined;
|
||
|
}
|
||
|
if (n === 0 || n === 1) {
|
||
|
return n;
|
||
|
}
|
||
|
|
||
|
return (fibonacci(n - 1) + fibonacci(n - 2));
|
||
|
}
|
||
|
|
||
|
|
||
|
// range //////////////////////////////////////////////////////////////////////////////
|
||
|
|
||
|
// Fonction range, pas trop de choix ici dans l'écriture
|
||
|
function range(stop, start = 0, step = 1) {
|
||
|
const res = [];
|
||
|
|
||
|
// je mets une "garde" ici pour éviter des boucles sans fin si step est nul ou négatif
|
||
|
if (!Number.isInteger(step) || step < 1) return res;
|
||
|
|
||
|
// for "à l'ancienne" du C ou java. On ne peut pas faire bien mieux
|
||
|
for (let i = start; i < stop; i += step) {
|
||
|
res.push(i);
|
||
|
}
|
||
|
return res;
|
||
|
}
|
||
|
|
||
|
// //////////////////////////////////////////////////////////////////////////////
|
||
|
// Exercice : Téléchargement asynchrone
|
||
|
// //////////////////////////////////////////////////////////////////////////////
|
||
|
|
||
|
|
||
|
function download_json(callback) {
|
||
|
const url = 'https://perso.liris.cnrs.fr/romuald.thion/files/Enseignement/DIU-EIL/DIU-EIL-WEB.json';
|
||
|
|
||
|
fetch(url)
|
||
|
.then(response => response.json())
|
||
|
.then(callback)
|
||
|
.catch(console.error);
|
||
|
}
|
||
|
|
||
|
// //////////////////////////////////////////////////////////////////////////////
|
||
|
document.addEventListener('DOMContentLoaded', () => {
|
||
|
console.log('Document entièrement chargé.');
|
||
|
document.getElementById('btn-exec').onclick= () => alert('clic');
|
||
|
}, false);
|