Maison  >  Article  >  interface Web  >  Javascript est-il un langage compilé ?

Javascript est-il un langage compilé ?

青灯夜游
青灯夜游original
2021-06-30 14:52:383111parcourir

Javascript n'est pas un langage compilé, mais un langage de programmation interprété. Le code source JavaScript n'a pas besoin d'être compilé avant d'être envoyé au client pour exécution. Au lieu de cela, le code de caractères au format texte est envoyé au navigateur pour interprétation et exécution par le navigateur.

Javascript est-il un langage compilé ?

L'environnement d'exploitation de ce tutoriel : système Windows 7, JavaScript version 1.8.5, ordinateur Dell G3.

Javascript n'est pas un langage compilé, mais un langage de programmation interprété ou compilé juste à temps.

La compilation consiste à traduire le programme source en code cible exécutable. La traduction et l'exécution sont distinctes ; tandis que l'interprétation consiste à terminer la traduction et l'exécution du programme source en une seule fois et ne génère pas de code cible stockable. .

JavaScript ("JS" en abrégé) est un langage de programmation léger, interprété ou compilé juste à temps avec priorité de fonction ; JavaScript est interprété ligne par ligne lors de l'exécution du programme.

Le code source de JavaScript n'a pas besoin d'être compilé avant d'être envoyé au client pour exécution. Au lieu de cela, le code de caractère au format texte est envoyé au navigateur pour interprétation et exécution par le navigateur. La faiblesse des langages de traduction littérale est qu'ils sont moins sécurisés, et en JavaScript, si l'on ne peut pas s'exécuter, alors les langages suivants ne peuvent pas non plus s'exécuter. La solution consiste à utiliser try{}catch(){}, dans lequel les informations d'erreur seront transmises dans catch().

console.log("a");//这是正确的
 console.log("b");//这是正确的
 console.logg("c");//这是错误的,并且到这里会停下来
 console.log("d");//这是正确的
 console.log("e");//这是正确的
 
 /*解决办法*/
 try{console.log("a");}catch(e){}//这是正确的
 try{console.log("b");}catch(e){}//这是正确的
 try{console.logg("c");}catch(e){}//这是错误的,但是到这里不会停下来,而是跳过
 try{console.log("d");}catch(e){}//这是正确的
 try{console.log("e");}catch(e){}//这是正确的

JavaScript est classé comme langage littéral car les moteurs traditionnels chargent le code et l'interprètent à chaque fois qu'il est exécuté. Le V8 interprète tout le code avant de commencer à l'exécuter, tandis que d'autres moteurs l'interprètent ligne par ligne (SpiderMonkey stockera temporairement les instructions interprétées pour améliorer les performances, ce que l'on appelle cependant la compilation en temps réel, car la plupart des parties essentielles du V8). utilisation Il est écrit en JavaScript (et SpiderMonkey est écrit en C++), donc dans différents tests, les performances des deux présentent des avantages et des inconvénients. Un langage compilé lui correspond, tel que le langage C. Avant qu'un programme écrit dans un langage compilé puisse être exécuté, il doit être compilé pour compiler le code en code machine, puis exécuté.

Langage compilé VS langage interprété

1. Différentes méthodes de communication avec les ordinateurs

Les programmes interprètes ne génèrent pas de cibles Code, il extrait les instructions du programme source une par une, les interprète et les exécute ; l'interpréteur interprète les fichiers de code source en langage machine et les transmet au CPU pour exécution.

La compilation consiste à traduire le programme source en code cible exécutable et à exécuter le fichier du programme exécutable. La traduction et l'exécution sont séparées.

2. Vitesse d'exécution

Les programmes interprétés ont une faible efficacité d'exécution. Tous les codes doivent être interprétés et exécutés par l'interprète. La vitesse est beaucoup plus lente que le type compilé

Compilé. exécution du programme C'est rapide car le code de votre programme a été traduit en langage machine que l'ordinateur peut comprendre.

[Recommandations associées : Tutoriel d'apprentissage Javascript]

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!

Déclaration:
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