Fonctionnalités ode.js que vous ne connaissiez pas
Améliorations des performances et nouvelles fonctionnalités pour Node.js : rivaliser avec Deno et Bun
De nombreuses personnes souhaitent discuter de la vitesse du nouveau runtime JavaScript, ce qui implique indirectement (et parfois directement) que Node.js est plus lent ou manque de certaines fonctionnalités intégrées. Le modèle de développement de Deno 2 et Bun suggère qu'ils sont destinés à être des boîtes à outils tout-en-un pour créer des applications JavaScript. Ils :
- Charger automatiquement les fichiers .env
- Exécutez le script dans package.json
- Installer le package à partir de npm
- Livré avec une API intégrée pour écrire et exécuter des suites de tests
- Attendez
L'utilisation de Node.js nécessite l'utilisation d'outils tiers pour effectuer ces tâches, comme l'utilisation de dotenv pour charger des fichiers .env.
Cependant, Node.js a rattrapé son retard. Cet article mettra en avant trois des nombreuses fonctionnalités ajoutées depuis la version 20 ou 22. Commençons.
Charger le fichier .env
De nombreuses personnes comptent sur dotenv pour charger les fichiers d'environnement. Nous écririons require('dotenv').config()
ou import 'dotenv/config'
puis accéderions à la valeur de process.env
. À partir de la version 20.6.0, vous pouvez utiliser l'indicateur --env-file
pour spécifier le fichier à partir duquel Node.js doit charger les variables d'environnement.
Par exemple, la commande suivante chargera les variables d'environnement à partir d'un fichier .env :
node --env-file=.env index.js
Vous pouvez également charger plusieurs fichiers en passant deux fois le drapeau :
node --env-file=.env --env-file=config.env index.js
Certaines personnes ont signalé des améliorations des performances de leurs applications en supprimant le package dotenv et en utilisant directement Node.js. Voici ce que Wes Bos a tweeté à propos du temps de démarrage de son application passant de 1 300 ms à 1 ms :
Surveiller les dossiers de candidature
Je pense que vous avez utilisé différents outils pour surveiller vos fichiers sources et redémarrer l'application lorsque vous modifiez le code. Nous l'avons fait de différentes manières, dont l'une en utilisant nodemon, un utilitaire qui surveille les modifications dans les fichiers source et redémarre automatiquement le serveur.
À partir des versions 18.11.0 et 16.19.0, la node
CLI obtient deux nouveaux indicateurs pour ce faire : --watch
et --watch-path
. L'exécution de node --watch index.js
démarrera l'application en mode montre et surveillera le point d'entrée et tous les modules requis ou importés. Vous devez utiliser l'indicateur --watch-path
pour spécifier les chemins à surveiller, plutôt que les fichiers d'entrée et leurs modules importés.
Il existe également un drapeau lié au mode montre : le drapeau --watch-preserve-output
. Vous pouvez utiliser cet indicateur si vous souhaitez empêcher que la sortie de la console ne soit effacée lorsque le processus est redémarré en mode surveillance.
node --env-file=.env index.js
Exécutez le script dans package.json
Bien que Node.js ne dispose pas de gestionnaire de packages intégré, la plupart des installations sont généralement fournies avec npm. Vous avez utilisé npm run
ou des commandes similaires provenant de divers gestionnaires de packages pour exécuter des scripts définis dans package.json
. Ce n'est pas un problème, mais Bun et Deno se vantent du temps nécessaire pour que le script package.json
soit opérationnel, ce qui a peut-être amené l'équipe Node à reconsidérer cette option.
À partir de la version 22.0.0, Node.js peut désormais exécuter des scripts via le drapeau --run
, tel que node --run dev
. Cela ne se contente pas de remplacer npm run
sans apporter aucun avantage ni limitation. L'utilisation de node --run
s'est avérée plus rapide que la commande npm run
. Certaines fonctionnalités intentionnellement exclues des autres implémentations d'exécution incluent :
- Exécutez un pré-script ou un post-script en plus du script spécifié.
- Définissez les variables d'environnement spécifiques au gestionnaire de packages.
Vous pouvez en savoir plus sur ce drapeau dans la documentation.
Résumé
Cet article explore les dernières améliorations apportées à Node.js qui le rapprochent des capacités d'intégration fournies par Deno 2 et Bun. Nous avons vérifié les fonctionnalités suivantes :
- À partir de la version 20.6.0, utilisez le drapeau
--env-file
pour charger les fichiers .env - Capacités de surveillance des fichiers locaux fournies par les indicateurs
--watch
et--watch-path
introduits dans les versions 18.11.0 et 16.19.0 - Le drapeau
--run
, disponible depuis la version 22.0.0, offre un moyen plus rapide d'exécuter despackage.json
scripts
Ces mises à jour aident Node.js à rattraper son retard par rapport aux autres environnements d'exécution en réduisant le besoin d'outils tiers et en améliorant les performances, la sécurité et la convivialité.
Article original publié par mes soins sur le blog Telerik
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!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds











Python convient plus aux débutants, avec une courbe d'apprentissage en douceur et une syntaxe concise; JavaScript convient au développement frontal, avec une courbe d'apprentissage abrupte et une syntaxe flexible. 1. La syntaxe Python est intuitive et adaptée à la science des données et au développement back-end. 2. JavaScript est flexible et largement utilisé dans la programmation frontale et côté serveur.

Le passage de C / C à JavaScript nécessite de s'adapter à la frappe dynamique, à la collecte des ordures et à la programmation asynchrone. 1) C / C est un langage dactylographié statiquement qui nécessite une gestion manuelle de la mémoire, tandis que JavaScript est dynamiquement typé et que la collecte des déchets est automatiquement traitée. 2) C / C doit être compilé en code machine, tandis que JavaScript est une langue interprétée. 3) JavaScript introduit des concepts tels que les fermetures, les chaînes de prototypes et la promesse, ce qui améliore la flexibilité et les capacités de programmation asynchrones.

Les principales utilisations de JavaScript dans le développement Web incluent l'interaction client, la vérification du formulaire et la communication asynchrone. 1) Mise à jour du contenu dynamique et interaction utilisateur via les opérations DOM; 2) La vérification du client est effectuée avant que l'utilisateur ne soumette les données pour améliorer l'expérience utilisateur; 3) La communication de rafraîchissement avec le serveur est réalisée via la technologie AJAX.

L'application de JavaScript dans le monde réel comprend un développement frontal et back-end. 1) Afficher les applications frontales en créant une application de liste TODO, impliquant les opérations DOM et le traitement des événements. 2) Construisez RestulAPI via Node.js et Express pour démontrer les applications back-end.

Comprendre le fonctionnement du moteur JavaScript en interne est important pour les développeurs car il aide à écrire du code plus efficace et à comprendre les goulots d'étranglement des performances et les stratégies d'optimisation. 1) Le flux de travail du moteur comprend trois étapes: analyse, compilation et exécution; 2) Pendant le processus d'exécution, le moteur effectuera une optimisation dynamique, comme le cache en ligne et les classes cachées; 3) Les meilleures pratiques comprennent l'évitement des variables globales, l'optimisation des boucles, l'utilisation de const et de locations et d'éviter une utilisation excessive des fermetures.

Python et JavaScript ont leurs propres avantages et inconvénients en termes de communauté, de bibliothèques et de ressources. 1) La communauté Python est amicale et adaptée aux débutants, mais les ressources de développement frontal ne sont pas aussi riches que JavaScript. 2) Python est puissant dans les bibliothèques de science des données et d'apprentissage automatique, tandis que JavaScript est meilleur dans les bibliothèques et les cadres de développement frontaux. 3) Les deux ont des ressources d'apprentissage riches, mais Python convient pour commencer par des documents officiels, tandis que JavaScript est meilleur avec MDNWEBDOCS. Le choix doit être basé sur les besoins du projet et les intérêts personnels.

Les choix de Python et JavaScript dans les environnements de développement sont importants. 1) L'environnement de développement de Python comprend Pycharm, Jupyternotebook et Anaconda, qui conviennent à la science des données et au prototypage rapide. 2) L'environnement de développement de JavaScript comprend Node.js, VScode et WebPack, qui conviennent au développement frontal et back-end. Le choix des bons outils en fonction des besoins du projet peut améliorer l'efficacité du développement et le taux de réussite du projet.

C et C jouent un rôle essentiel dans le moteur JavaScript, principalement utilisé pour implémenter des interprètes et des compilateurs JIT. 1) C est utilisé pour analyser le code source JavaScript et générer une arborescence de syntaxe abstraite. 2) C est responsable de la génération et de l'exécution de bytecode. 3) C met en œuvre le compilateur JIT, optimise et compile le code de point chaud à l'exécution et améliore considérablement l'efficacité d'exécution de JavaScript.
