Aide sur fonctionnement de programmes javascript
Résolu/Fermé
nathoufix
Messages postés
27
Date d'inscription
mardi 8 août 2017
Statut
Membre
Dernière intervention
27 mai 2019
-
19 mai 2019 à 18:10
nathoufix Messages postés 27 Date d'inscription mardi 8 août 2017 Statut Membre Dernière intervention 27 mai 2019 - 27 mai 2019 à 11:51
nathoufix Messages postés 27 Date d'inscription mardi 8 août 2017 Statut Membre Dernière intervention 27 mai 2019 - 27 mai 2019 à 11:51
A voir également:
- Aide sur fonctionnement de programmes javascript
- Telecharger javascript - Télécharger - Langages
- Fonctionnement du protocole http - Guide
- Fonctionnement onedrive - Guide
- Notice de fonctionnement - Guide
- Chromecast fonctionnement - Guide
9 réponses
jordane45
Messages postés
38346
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
16 décembre 2024
4 718
19 mai 2019 à 18:38
19 mai 2019 à 18:38
Bonjour,
Oui tu peux et... surtout ..oui il le faut.
Sans ça; impossible de t'aider.
NB: Pour poster ton code, merci de le faire en suivant ce tuto :
https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
Oui tu peux et... surtout ..oui il le faut.
Sans ça; impossible de t'aider.
NB: Pour poster ton code, merci de le faire en suivant ce tuto :
https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
jordane45
Messages postés
38346
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
16 décembre 2024
4 718
19 mai 2019 à 21:17
19 mai 2019 à 21:17
Voici de quoi t'aider à comprendre ce code
https://www.w3schools.com/jsref/met_document_getelementbyid.asp
https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Instructions/for
https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Objets_globaux/Math/floor
https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Objets_globaux/Math/random
https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Objets_globaux/String/length
https://www.w3schools.com/jsref/met_document_getelementbyid.asp
https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Instructions/for
https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Objets_globaux/Math/floor
https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Objets_globaux/Math/random
https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Objets_globaux/String/length
nathoufix
Messages postés
27
Date d'inscription
mardi 8 août 2017
Statut
Membre
Dernière intervention
27 mai 2019
19 mai 2019 à 22:03
19 mai 2019 à 22:03
Super gentil! Merci :)
nathoufix
Messages postés
27
Date d'inscription
mardi 8 août 2017
Statut
Membre
Dernière intervention
27 mai 2019
19 mai 2019 à 19:40
19 mai 2019 à 19:40
Merci, voici le code (générateur de caractères aléatoire):
function generate(){ let complexity = document.getElementById("slider").value; let values = "ABCDEFGHIJKLMNOPQRSTUVWZYZabcdefghijklmnopqrstuvwxyz1234567890!@#$%ù:_§^&*()_+"; let password = ""; for(var i = 0; i <= complexity; i++){ password = password + values.charAt(Math.floor(Math.random() * Math.floor(values.length - 1))); } document.getElementById("display").value = password; document.getElementById("lastNums").innerHTML += password + "<br />"; } document.getElementById("length").innerHTML = "Taille: 25"; document.getElementById("slider").oninput = function(){ if(document.getElementById("slider").value > 0){ document.getElementById("length").innerHTML = "Taille: " + document.getElementById("slider").value; } else{ document.getElementById("length").innerHTML = "Taille: 1"; } } function copyPassword(){ document.getElementById("display").select(); document.execCommand("Copy"); alert("Mots de passe copié"); }
Salut,
qu'est ce que vous ne comprenez pas?
Une fonction est une ou plusieurs instructions regroupées dans un but précis. Un but peut-être un peu tout ce qu'on veux ou plutôt on a besoin dans le fonctionnement du programme.
HTML et CSS ne sont pas de la programmation et s'ils sont des langages informatique sont dits descriptifs. Une description c'est différent d'une action, en cela la programmation qui manipule des données(variables) et permet de créer des cheminements logiques(algorithmes) incluant des tests et comparaisons ainsi que des répétitions automatisées est très différente de langage descriptifs que sont HTML et CSS.
qu'est ce que vous ne comprenez pas?
Une fonction est une ou plusieurs instructions regroupées dans un but précis. Un but peut-être un peu tout ce qu'on veux ou plutôt on a besoin dans le fonctionnement du programme.
HTML et CSS ne sont pas de la programmation et s'ils sont des langages informatique sont dits descriptifs. Une description c'est différent d'une action, en cela la programmation qui manipule des données(variables) et permet de créer des cheminements logiques(algorithmes) incluant des tests et comparaisons ainsi que des répétitions automatisées est très différente de langage descriptifs que sont HTML et CSS.
Les fonctions sont la base de la programmation. Elles sont internes au langage(prédéfinies) comme des fonctions ou bien crée par le développeur pour une tâche spécifique. En JavaScript qui est un langage de script et surtout fortement Objet(voir définition Programmation Orientée Objet POO ou OOP en anglais) les fonctions sont souvent internes à un objet(structure de données regroupant une thématique) et dans ce cas sont appelées méthodes.
On parle de notation pointée car l'accès aux méthodes d'un objet se fait par l'intermédiaire d'un point(symbole ' . ') suivit du nom de la méthode à utiliser. Chaque point est donc l'appel à une méthode interne à l'objet.
Pour le reste et comme il est inutile de connaître par cœur exactement chaque fonction et méthodes (mais c'est bien de savoir qu'elles existent et cela vient aisément à force de les utiliser) il vous suffit de consulter un manuel ou lexique contenant le détail de l'utilisation et utilité de chaque fonction et méthodes prédéfinies qui sont en fait les éléments du langage.On parle de langage car le principe est de "s'adresser" à l'ordinateur par le moyen d'instructions ou lignes de codes(la ligne comme le point-virgule étant fréquemment un moyen de séparer chaque instruction pour au moins une clarté de lecture et écriture du langage).
Une fonction comme les variables(espace de stockage d'une information ou valeur) une fois définies peuvent être utilisées indéfiniment selon le contexte. Parmi le contexte il faut différencier des niveaux où existent chaque élément du langage. Par exemple dans une fonction sauf indication du contraire chaque valeur(variable) est interne à la fonction et donc n'existe que pendant l'exécution de celle ci, cela se nomme le 'scope' qui définit un contexte interne. Il n'y a pas de limite à l'imbrication de ces 'scopes' les uns aux autres tout comme c'est le cas pour les objets qui peuvent définir des objets composés d'objets composés eux même d'objets...idem pour les fonctions où la notion de récursivité est présente(une répétition possible à l'infini d'une même règle(la fonction) à différentes valeurs et contextes(variables et objets).
Pour le reste si vous débutez vous feriez mieux de potasser les cours de débutants et tutos disponibles sur le net, par des bouquins ou autres ...bref apprendre par de nombreuses façons et possibles et sera mieux que mes explications car fait appel à la pratique concrète via les exemples et exercices de ces cours ou cas pratiques expliqués à appliquer.
Ainsi que vous tourner vers les manuels et autres lexiques décrivant chaque élément existant et syntaxe et utilisation de ceux ci(comme les fonctions , objets et structures de données et de logiques - par logique c'est la logique mathématique, informatique et de programmation dont je parle, voir par exemple les mathématiques de Boole qui s'appuient sur les états vrai/faux ou oui/non d'une valeur, le fameux système binaire qui est à la base de l'électronique).
Pour les manuels (d'utilisation de l'outil technique langage de programmation JavaScript)voir ici
https://developer.mozilla.org/fr/docs/Web/JavaScript/Guide
et ici
https://www.w3schools.com/jsref/default.asp
Il suffit d'y chercher le nom des méthodes et fonctions dont vous avez besoin où que vous ne comprenez pas. Bien sûr avant d'aller voir le dictionnaire c'est utile de connaître les bases de syntaxe , grammaire et autres structures formant le langage(test, comparaisons , boucle, différents types et structures de données...) donc go --->tuto Débutant.
On parle de notation pointée car l'accès aux méthodes d'un objet se fait par l'intermédiaire d'un point(symbole ' . ') suivit du nom de la méthode à utiliser. Chaque point est donc l'appel à une méthode interne à l'objet.
Pour le reste et comme il est inutile de connaître par cœur exactement chaque fonction et méthodes (mais c'est bien de savoir qu'elles existent et cela vient aisément à force de les utiliser) il vous suffit de consulter un manuel ou lexique contenant le détail de l'utilisation et utilité de chaque fonction et méthodes prédéfinies qui sont en fait les éléments du langage.On parle de langage car le principe est de "s'adresser" à l'ordinateur par le moyen d'instructions ou lignes de codes(la ligne comme le point-virgule étant fréquemment un moyen de séparer chaque instruction pour au moins une clarté de lecture et écriture du langage).
Une fonction comme les variables(espace de stockage d'une information ou valeur) une fois définies peuvent être utilisées indéfiniment selon le contexte. Parmi le contexte il faut différencier des niveaux où existent chaque élément du langage. Par exemple dans une fonction sauf indication du contraire chaque valeur(variable) est interne à la fonction et donc n'existe que pendant l'exécution de celle ci, cela se nomme le 'scope' qui définit un contexte interne. Il n'y a pas de limite à l'imbrication de ces 'scopes' les uns aux autres tout comme c'est le cas pour les objets qui peuvent définir des objets composés d'objets composés eux même d'objets...idem pour les fonctions où la notion de récursivité est présente(une répétition possible à l'infini d'une même règle(la fonction) à différentes valeurs et contextes(variables et objets).
Pour le reste si vous débutez vous feriez mieux de potasser les cours de débutants et tutos disponibles sur le net, par des bouquins ou autres ...bref apprendre par de nombreuses façons et possibles et sera mieux que mes explications car fait appel à la pratique concrète via les exemples et exercices de ces cours ou cas pratiques expliqués à appliquer.
Ainsi que vous tourner vers les manuels et autres lexiques décrivant chaque élément existant et syntaxe et utilisation de ceux ci(comme les fonctions , objets et structures de données et de logiques - par logique c'est la logique mathématique, informatique et de programmation dont je parle, voir par exemple les mathématiques de Boole qui s'appuient sur les états vrai/faux ou oui/non d'une valeur, le fameux système binaire qui est à la base de l'électronique).
Pour les manuels (d'utilisation de l'outil technique langage de programmation JavaScript)voir ici
https://developer.mozilla.org/fr/docs/Web/JavaScript/Guide
et ici
https://www.w3schools.com/jsref/default.asp
Il suffit d'y chercher le nom des méthodes et fonctions dont vous avez besoin où que vous ne comprenez pas. Bien sûr avant d'aller voir le dictionnaire c'est utile de connaître les bases de syntaxe , grammaire et autres structures formant le langage(test, comparaisons , boucle, différents types et structures de données...) donc go --->tuto Débutant.
nathoufix
Messages postés
27
Date d'inscription
mardi 8 août 2017
Statut
Membre
Dernière intervention
27 mai 2019
19 mai 2019 à 22:03
19 mai 2019 à 22:03
Merci beaucoup pour votre aide!!
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
nathoufix
Messages postés
27
Date d'inscription
mardi 8 août 2017
Statut
Membre
Dernière intervention
27 mai 2019
26 mai 2019 à 16:21
26 mai 2019 à 16:21
Malgré votre aide, je ne comprends pas cette ligne :
password = password + values.charAt(Math.floor(Math.random() * Math.floor(values.length - 1)));
jordane45
Messages postés
38346
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
16 décembre 2024
4 718
26 mai 2019 à 16:53
26 mai 2019 à 16:53
cela extrait de la variable "values" (celle qui contient tous les caractères possibles à utiliser...) une des lettre de façon aléatoire grace au random.
https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Objets_globaux/String/charAt
https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Objets_globaux/Math/floor
https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Objets_globaux/Math/random
https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Objets_globaux/String/length
https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Objets_globaux/String/charAt
https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Objets_globaux/Math/floor
https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Objets_globaux/Math/random
https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Objets_globaux/String/length
nathoufix
Messages postés
27
Date d'inscription
mardi 8 août 2017
Statut
Membre
Dernière intervention
27 mai 2019
26 mai 2019 à 17:08
26 mai 2019 à 17:08
Merci je vais jeter un œil à ça !
nathoufix
Messages postés
27
Date d'inscription
mardi 8 août 2017
Statut
Membre
Dernière intervention
27 mai 2019
26 mai 2019 à 18:57
26 mai 2019 à 18:57
Mais, du coup cette ligne sert à quoi ?
for(var i = 0; i <= complexity; i++){
jordane45
Messages postés
38346
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
16 décembre 2024
4 718
26 mai 2019 à 19:01
26 mai 2019 à 19:01
Ben.. a alimenter le password du nombre de caractères voulu....
Autrement dit :
Par exemple
Autrement dit :
complexite = 10
Boucle de 1 à complexite (soit...10)
a chaque tour de boucle... je choisi un caractère de façon aléatoire et je l'ajoute à la variable password
Par exemple
1 er tour de la boucle.. je tire le A
Donc password = A
Puis au dexième tour.. je tire le x
Le password devient Ax
Troisième tour.. le C
Password devient AxC
etc...
nathoufix
Messages postés
27
Date d'inscription
mardi 8 août 2017
Statut
Membre
Dernière intervention
27 mai 2019
27 mai 2019 à 10:27
27 mai 2019 à 10:27
Mais comment on sait que complexity = 10?
nathoufix
Messages postés
27
Date d'inscription
mardi 8 août 2017
Statut
Membre
Dernière intervention
27 mai 2019
Modifié le 27 mai 2019 à 10:31
Modifié le 27 mai 2019 à 10:31
Et la variable complexity sert à quoi ?
Désolé, mais j’ai compris tout le reste sinon
Correction : j’ai compris c’est bon
Désolé, mais j’ai compris tout le reste sinon
Correction : j’ai compris c’est bon
jordane45
Messages postés
38346
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
16 décembre 2024
4 718
>
nathoufix
Messages postés
27
Date d'inscription
mardi 8 août 2017
Statut
Membre
Dernière intervention
27 mai 2019
27 mai 2019 à 11:17
27 mai 2019 à 11:17
Dans ce cas... met le sujet en RESOLU.
nathoufix
Messages postés
27
Date d'inscription
mardi 8 août 2017
Statut
Membre
Dernière intervention
27 mai 2019
27 mai 2019 à 11:51
27 mai 2019 à 11:51
Merci pour votre aide