2019-2020/Formations/NSI/Bloc1/WEB/DIU-EIL-WEB.js

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);