Obtenir l'entrée de l'utilisateur en JavaScript

Shiv Yadav 12 octobre 2023
  1. Obtenir l’entrée de l’utilisateur à partir de la console du navigateur
  2. Obtenir l’entrée de l’utilisateur à partir de la console NodeJS
  3. Obtenir l’entrée de l’utilisateur à partir de NodeJS à l’aide du module prompt-sync
Obtenir l'entrée de l'utilisateur en JavaScript

Cet article vous aidera à comprendre comment obtenir l’entrée de l’utilisateur en JavaScript.

Il existe deux façons d’obtenir l’entrée de l’utilisateur dans JavaScript, selon que vous souhaitez une entrée du navigateur ou de NodeJS. Ce guide vous aidera à apprendre les deux.

Obtenir l’entrée de l’utilisateur à partir de la console du navigateur

Pour exiger une saisie de l’utilisateur depuis le navigateur, vous devez utiliser la méthode prompt() fournie par le navigateur. La méthode vous permet d’accepter l’entrée de l’utilisateur sous forme de chaîne et de la stocker dans une variable comme ceci :

const input = prompt();

Cette méthode accepte également une chaîne comme information supplémentaire pour savoir quelle entrée l’application attend.

Par exemple, le code suivant pour demander un nom d’utilisateur est écrit ci-dessous :

const input = prompt('What\'s your name?');
alert(`Your name is ${input}`);

La méthode alert() affiche le résultat. Vous pouvez styliser le texte de la ligne comme une question ou un indice selon vos besoins.

Obtenir l’entrée de l’utilisateur à partir de la console NodeJS

Pour accepter les entrées utilisateur de la console NodeJS, vous devez utiliser le module readline fourni.

Vous pouvez utiliser les commandes suivantes comme require() du module comme indiqué ci-dessous :

const readline = require('readline');

Ensuite, vous devez instancier l’interface attachée au flux d’entrée. Utilisez la méthode readline.createInterface() pour créer une interface et passer les paramètres d’entrée et de sortie comme arguments d’objet.

L’écriture de l’entrée et de la sortie nécessite l’écriture de l’entrée dans process.stdin et de la sortie dans process.stdout.

Voici un exemple de création d’une interface readline.

const readline = require('readline');

const ql = readline.createInterface({
  input: process.stdin,
  output: process.stdout,
});

La méthode question() doit être appelée sur l’instance d’interface affectée à la variable q1 dans le code ci-dessus pour demander une entrée utilisateur.

La méthode question() prend deux paramètres.

  • Chaîne de questions que vous souhaitez poser à l’utilisateur.
  • Une fonction de rappel à exécuter lorsqu’une réponse est reçue et que la réponse est transmise à la fonction

Vous pouvez ignorer l’objet de paramètre et passer la fonction de rappel comme deuxième paramètre.

Enfin, vous pouvez fermer l’interface q1 en appelant la méthode q1.close() dans la fonction de rappel.

arr.js :

const readline = require('readline');

const q1 = readline.createInterface({
  input: process.stdin,
  output: process.stdout,
});

q1.question("Where do you live? ", function (answer) {
  console.log(`Oh, so you live in ${answer}`);
  console.log("Interface Closed");
  q1.close();
});

Obtenir l’entrée de l’utilisateur à partir de NodeJS à l’aide du module prompt-sync

Tout d’abord, vous devez installer le module prompt-sync en utilisant NPM ou Yarn comme suit :

npm install prompt-sync
or
yarn add prompt-sync

Ensuite, vous avez besoin du module require() pour prompt-sync.

Jetez un oeil au code ci-dessous.

pm.js :

const prompt = require('prompt-sync')();
const input = prompt('Where do you live? ');

console.log(`Oh, so you live in ${input}`);

Étant donné que cette méthode est synchrone, l’instance de nœud attend une entrée avant d’exécuter la ligne suivante.

Auteur: Shiv Yadav
Shiv Yadav avatar Shiv Yadav avatar

Shiv is a self-driven and passionate Machine learning Learner who is innovative in application design, development, testing, and deployment and provides program requirements into sustainable advanced technical solutions through JavaScript, Python, and other programs for continuous improvement of AI technologies.

LinkedIn

Article connexe - JavaScript Event

Article connexe - JavaScript Input