Maison > interface Web > js tutoriel > Actualisation Javascript simple pour ceux qui se sentent laissés pour compte ou ne savent pas par où commencer avec les fonctions, les tableaux, les boucles, JSON et NoSQL

Actualisation Javascript simple pour ceux qui se sentent laissés pour compte ou ne savent pas par où commencer avec les fonctions, les tableaux, les boucles, JSON et NoSQL

Barbara Streisand
Libérer: 2024-10-31 00:32:29
original
510 Les gens l'ont consulté

Plain Javascript Refresher for those feeling left behind or not knowing where to start w/ Functions, Arrays, Loops, JSON & NoSQL

Ici, nous allons apprendre Plain Vanilla JS sans utiliser NodeJS ou des bibliothèques externes. Nous allons commencer dès le départ avec un cas d'utilisation en convertissant certaines données de feuille Google en JSON et en les stockant dans un compartiment AWS S3, puis en les récupérant à l'aide de plain js. La plupart des leçons commencent par un programme Hello World et pas grand-chose d'autre, mais ici, nous avons quelque chose à programmer tout de suite afin que nous puissions mettre en pratique nos tableaux et nos boucles qui sont les piliers clés de tout langage de programmation. De plus, vous pouvez faire une incursion dans le monde de la science des données ici et peut-être en faire une carrière comme je l'ai fait.

Lorsque nous étudions les données pour la première fois, nous pensons à SQL, mais il existe de nombreuses applications dans lesquelles SQL est excessif et inutile. Dans un tableau de bord avec quelques métriques, nous pouvons nous en sortir avec un simple fichier plat JSON comme source de données sans relation avec d'autres données. Les tableaux de bord peuvent utiliser ce format NoSQL et constituent un choix populaire pour les besoins de reporting des groupes marketing.

Pour configurer notre environnement, nous n'avons réellement besoin que de Google Chrome et de l'extension json chrome pour convertir les données d'une feuille de calcul en json. Ensuite, nous avons besoin d'AWS gratuit et d'un compartiment S3 comme site Web générique. Pour un IDE, nous utiliserons simplement un bloc-notes Windows. Nous aurons également besoin d'un réseau local pour récupérer nos données, car la récupération des données à partir du lecteur C ne fonctionnera pas car l'API de récupération javascript utilise le protocole http, un serveur Web est donc nécessaire pour cela. Avant de rendre public AWS gratuit, nous allons d'abord configurer un serveur Web local pour tester nos données. Nous utiliserons du Python simple pour cela.

mettre en place l'environnement
étapes pour configurer un serveur Python local et un fichier d'index

Avant de créer un serveur distant AWS, nous devons d'abord configurer un serveur Web local à l'aide de Python. Voici comment procéder

Découvrez d'abord si Python est installé... ouvrez une invite de commande qui sera par défaut votre dossier personnel c:Usersyourname et tapez python. Si les informations de version s'affichent, alors il est installé et vous pouvez passer à l'étape 6 ci-dessous (mais assurez-vous d'abord qu'un fichier d'index est enregistré dans votre dossier personnel)
si vous n'avez pas installé python, suivez ces instructions

Serveur Python sous Windows
1 allez dans la zone de recherche et tapez cmd puis appuyez sur l'invite de commande, un écran noir s'ouvrira avec le chemin d'accès à votre dossier personnel (généralement C: UsersyourName)
2 tapez en python, s'il est installé, il affichera un numéro de version
3 s'il n'est pas installé, le bouton Obtenir apparaît, appuyez dessus et le téléchargement s'installera en quelques minutes (ou téléchargez simplement Python depuis Chrome)
4 une fois complètement installé, rouvrez l'invite cmd et tapez à nouveau python
5 informations de version s'afficheront... voici par où commencer si python est déjà installé
6 tapez python -m http.server et cela démarre le serveur (gardez cette fenêtre cmd ouverte)
7 assurez-vous d'avoir enregistré un fichier d'index dans le dossier personnel (dans l'explorateur de fichiers, cliquez sur c : puis sur Utilisateurs puis sur votre nom pour ouvrir le dossier personnel)
7a gardez cmd ouvert pendant que vous accédez à localhost à l'étape 8... la fermeture de cmd nécessite de rouvrir et de recommencer
8 allez sur Chrome et tapez localhost:8000 et votre page d'index par défaut apparaîtra....voir ci-dessous pour créer un fichier d'index

Serveur Python sur Mac
sur un Mac, ouvrez un terminal et commencez par l'étape 2 ci-dessus ... sauf qu'il faudra peut-être essayer 3 options différentes ci-dessus en fonction de la version de Python préinstallée. Notre dossier personnel doit être le dossier dans lequel Python est installé et le même que le dossier du terminal dans lequel nous démarrons le serveur.

essayez ceci d'abord

  1. tapez python -m http.server ou
  2. tapez python3 -m http.server si ci-dessus ne fonctionne pas Appuyez sur Retour et Python 3 démarrera instantanément un simple serveur HTTP à partir du répertoire dans lequel la commande a été exécutée.. ce répertoire devrait également avoir un fichier d'index ou option 3 si les autres ne fonctionnent pas
  3. tapez python -m SimpleHTTPServer 8000 pour les anciennes versions

Comment créer un fichier d'index (accueil) dans notre chemin Python... enregistrez-le dans le même dossier où réside le serveur Web. Copiez ce code et enregistrez-le sous index.html

     <!DOCTYPE html>
<html lang="en-US">
<header>
</header>
<body>
   <p> hi there, this is our first html page </p>
</body>
</html>
Copier après la connexion
Copier après la connexion
Copier après la connexion

préparer quelques données

1 copiez ces données et collez-les dans une feuille Google vierge
c'est notre société fictive avec une base de données de commandes

order_no,order_date,product_line,dollar_amt,product1,product2,product3
12340,01-03-22,prod1,400,400,0,0
12341,01-02-22,prod2,50,0,50,0
12342,1-16-22,prod3,50,0,0,50
12343,1-17-22,prod1,100,100,0,0
12344,1-15-22,prod2,50,0,50,0
12345,2-5-22,prod1,100,100,0,0
12346,2-6-22,prod3,20,0,0,20
12347,2-7-22,prod1,100,100,0,0
12348,3-23-22,prod2,200,0,200,0
12349,3-5-22,prod3,20,0,0,20
123410,3-29-22,prod1,100,100,0,0
123411,3-25-22,prod1,100,100,0,0
123412,4-23-22,prod1,500,500,0,0
123413,4-24-22,prod2,100,0,100,0
123414,5-10-22,prod3,50,0,0,50
123415,5-15-22,prod1,500,500,0,0
123416,5-25-22,prod2,50,0,50,0
Copier après la connexion
Copier après la connexion
Copier après la connexion

TRÈS IMPORTANT - après avoir collé les données et pendant qu'elles sont toujours en surbrillance, dans les feuilles Google, appuyez sur les données puis divisez le texte en colonnes

2 récupérez l'extension json chrome
activez Chrome pour enregistrer au format JSON avant de créer la feuille.
J'ai trouvé ce raccourci simple qui ajoute une icône JSON à la barre d'outils de la feuille Google... il s'agit d'une extension Chrome
allez d'abord sur ce lien https://chromewebstore.google.com/detail/sheets-to-json/enmkalgdnmcaljdfkojckdbhkjmffmoa
puis appuyez sur Ajouter à Chrome, à l'extrême droite de la page
puis ouvrez une feuille Google vierge et vous verrez l'icône JSON comme dernier élément de la barre d'outils en haut de la page

3 transformez vos données en json
collez les données ci-dessus dans la feuille, puis textez dans les colonnes, puis appuyez sur l'icône json et accédez aux téléchargements pour obtenir votre fichier json

4 enregistrez ce fichier json dans le même dossier où résident Python et votre fichier d'index... Je l'ai enregistré sous le nom de commandes.json

exécuter notre programme

5 récupérer les données de votre fichier d'index... tester notre configuration de serveur et de fichiers

modifiez votre fichier index.html pour qu'il contienne le code suivant qui est différent du code que nous utiliserons ci-dessous pour accéder aux données depuis un serveur public

     <!DOCTYPE html>
<html lang="en-US">
<header>
</header>
<body>
   <p> hi there, this is our first html page </p>
</body>
</html>
Copier après la connexion
Copier après la connexion
Copier après la connexion

6 appelez localhost:8000 et affichez les données
7 après avoir joué avec json sur un serveur local, nous pouvons ensuite créer un bucket S3 public dans AWS

Configuration d'un compartiment AWS S3 en tant que serveur public

Le moyen le plus simple de stocker un fichier JSON à distance est dans AWS S3. En ne créant pas de schéma dans un serveur de données traditionnel, nous devenons sans serveur. Nous sommes dans le cloud AWS avec S3 où nous pouvons nous connecter à notre lien de compartiment depuis n'importe où. Comme indiqué précédemment, l'approche noSQL S3 présente certaines limites. Mais cela présente aussi de grands avantages. Lorsque nous travaillons avec des données, la nature humaine a tendance à vouloir n’utiliser qu’un seul tableau, comme à l’époque où nous nous appuyions fortement sur un seul tableau Excel. Ce format de fichier plat peut gérer quelques mesures afin que nous ne bombardions pas notre public de complexité. Un cas d'utilisation idéal pour un fichier plat est un simple tableau de bord.

Nous créons d’abord un bucket AWS s3, puis nous téléchargeons le fichier JSON. Voici comment nous procédons :

1 Inscrivez-vous à l'offre AWS gratuite, accédez à S3 depuis la console AWS et créez un nom de bucket unique

2 rendez-le public, en accédant à l'onglet Autorisations du compartiment pour désactiver le blocage de l'accès public - accédez à la section Bloquer l'accès public, modifiez, décochez et enregistrez

3 restez dans l'onglet Autorisations, puis modifiez la politique du compartiment, effacez ce qui s'y trouve et remplacez-le par ce qui suit, puis enregistrez les modifications (n'oubliez pas de remplacer le nom de votre compartiment ci-dessous par le nom réel)

order_no,order_date,product_line,dollar_amt,product1,product2,product3
12340,01-03-22,prod1,400,400,0,0
12341,01-02-22,prod2,50,0,50,0
12342,1-16-22,prod3,50,0,0,50
12343,1-17-22,prod1,100,100,0,0
12344,1-15-22,prod2,50,0,50,0
12345,2-5-22,prod1,100,100,0,0
12346,2-6-22,prod3,20,0,0,20
12347,2-7-22,prod1,100,100,0,0
12348,3-23-22,prod2,200,0,200,0
12349,3-5-22,prod3,20,0,0,20
123410,3-29-22,prod1,100,100,0,0
123411,3-25-22,prod1,100,100,0,0
123412,4-23-22,prod1,500,500,0,0
123413,4-24-22,prod2,100,0,100,0
123414,5-10-22,prod3,50,0,0,50
123415,5-15-22,prod1,500,500,0,0
123416,5-25-22,prod2,50,0,50,0
Copier après la connexion
Copier après la connexion
Copier après la connexion

4 puis, toujours dans l'onglet autorisations allez sur cross origin (cors), éditez et remplacez par ci-dessous et enregistrez

<!DOCTYPE html>
<body>
    <div id="myData"></div> <!--data result displays in this html div-->

    <script type="text/javascript">
convert();  //run the convert function..this converts json to html and displays to the front end in the myData div
                 // async is needed to run await which is the newest way to return a promise..await must be used inside a function
    //When you then put await in front of a function you're instructing the program to wait until that operation is complete before moving on.
async function convert() {
                //let response = await fetch('https://rickd.s3.us-east-2.amazonaws.com/orders4.json'); //get data from rickd s3 bucket in aws
                      //replace rickd with your bucket name
   let response = await fetch('orders.json'); //get data locally instead of from s3..orders.json is in same folder where python is installed
                let data = await response.json(); //getting data array in json format...waiting for all the data to come in

                    //then iterate over javascript array for as many times as there are js objects inside the array
            for (var i = 0; i < data.length; i++) {
                data[i].product1 = parseInt(data[i].product1); //this converts from string to int just the val for product1
              } //end for loop
         //we are rendering the array and not data in table format
myData.innerHTML = JSON.stringify(data, null, "\t"); //first stringify json object then render result inside html div tag
console.log(JSON.stringify(data, null, "\t")) //this is more readable, this is the pretty print..press ctrl-shift-J to view
  //console.log(JSON.stringify(data)) //prints all as one line / a string, this is the record format

} //end function
    </script>
</body>

<!-- next up..we need to return this data in table format-->
</html>
Copier après la connexion

5 Accédez à l'onglet Propriétés et appuyez sur Hébergement Web statique, le dernier élément. Cliquez ensuite sur modifier puis activer puis enregistrer. Cela transforme le lien de votre bucket en un site Web public.

6 Revenez à l'onglet Objets et appuyez sur Télécharger, puis allez à l'endroit où vous avez enregistré votre fichier JSON nouvellement créé et terminez cette opération. Votre fichier json sera désormais en s3.

7 Une fois le fichier JSON téléchargé avec succès, il apparaîtra dans la section objets de votre compartiment s3. Double-cliquez sur le fichier JSON et vous serez dans l'onglet Propriétés où vous verrez Aperçu des objets. Cliquez sur l'URL de l'objet fournie et les données JSON brutes apparaîtront. Copiez et enregistrez ce lien URL quelque part car vous en aurez besoin pour récupérer des données à partir de Javascript. Ce lien URL permet d'accéder au site Web générique nouvellement créé, un compartiment S3 accessible au public qui sert de site Web temporaire. Vous pouvez enregistrer des fichiers dans ce compartiment et les partager avec d'autres à tout moment.

8 L'accès à notre fichier json depuis AWS nécessite un codage différent de celui utilisé sur un serveur local. Nous devons d’abord fournir à l’utilisateur un lien vers notre page Web. Mon lien public vers nos données de commandes fictives est
https://rickd.s3.us-east-2.amazonaws.com/orders4.json Ensuite, notre code devrait ressembler à ceci, qui est différent de notre code d'origine. Pour ce code au lieu d'afficher notre tableau nous ajoutons des éléments de tableau donc l'affichage est au format tableau

     <!DOCTYPE html>
<html lang="en-US">
<header>
</header>
<body>
   <p> hi there, this is our first html page </p>
</body>
</html>
Copier après la connexion
Copier après la connexion
Copier après la connexion

Ensuite, voici le même code où nous ajoutons des en-têtes et du style

order_no,order_date,product_line,dollar_amt,product1,product2,product3
12340,01-03-22,prod1,400,400,0,0
12341,01-02-22,prod2,50,0,50,0
12342,1-16-22,prod3,50,0,0,50
12343,1-17-22,prod1,100,100,0,0
12344,1-15-22,prod2,50,0,50,0
12345,2-5-22,prod1,100,100,0,0
12346,2-6-22,prod3,20,0,0,20
12347,2-7-22,prod1,100,100,0,0
12348,3-23-22,prod2,200,0,200,0
12349,3-5-22,prod3,20,0,0,20
123410,3-29-22,prod1,100,100,0,0
123411,3-25-22,prod1,100,100,0,0
123412,4-23-22,prod1,500,500,0,0
123413,4-24-22,prod2,100,0,100,0
123414,5-10-22,prod3,50,0,0,50
123415,5-15-22,prod1,500,500,0,0
123416,5-25-22,prod2,50,0,50,0
Copier après la connexion
Copier après la connexion
Copier après la connexion

Partie 2

Tableaux, boucles et fonctions, quelques éléments constitutifs du codage, les éléments essentiels de la programmation

Array - la structure de données la plus importante
En javascript, nos données sont structurées sous forme de paires clé-valeur entourées d'accolades et délimitées par des virgules, un tableau contient plusieurs objets javascript, chaque objet représentant une ligne de données. C'est ce qu'on appelle le format JSON ou Javascript Object Notation.

Bouclage / Itération - la boucle la plus importante est la boucle for mais vous devriez étudier d'autres types de boucles. Une boucle for parcourt un tableau de données et effectue une opération à chaque passage. Dans notre cas d'utilisation, il affiche simplement les données sur le frontend via une requête de récupération.

une fonction
Une fonction est un bloc de code, un ensemble d'instructions, qui s'exécute en réponse à un certain type d'événement, comme appuyer sur un bouton. Dans certains cas, les fonctions ne sont pas nécessaires, mais dans d'autres cas, une fonction est requise pour qu'un code fonctionne correctement. Les fonctions ont un nom ou sont anonymes. Ils peuvent être appelés ou être auto-exécutables. La redoutable notation fléchée est intimidante au début mais elle est largement utilisée alors habituez-vous-y.

logique conditionnelle Enfin et surtout, nous avons également l'instruction if/else. if(condition) {alors fais ceci} else {faites ça}

en conclusion, il est nécessaire d'étudier tous ces sujets pour acquérir plus de connaissances car je ne fournis qu'un petit résumé ici dans cette leçon. Je ne fournis qu'une feuille de route, une sorte d'introduction, et vous, en tant que programmeur, devez apprendre le reste.

Bon codage !!

addenda

notre cas d'utilisation simple js, nosql est un graphique à barres où vous pouvez trouver le code ici... sur https://dev.to/rickdelpo1/stacked-bar-chart-using-a-json-data- source-plain-vanilla-javascript-plain-css-and-no-chart-libraries-2j29

à propos de l'auteur Rick Delpo.. https://javasqlweb.org/about.html

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:dev.to
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal