ホームページ > ウェブフロントエンド > フロントエンドQ&A > JavaScript はコンパイル言語ですか?

JavaScript はコンパイル言語ですか?

青灯夜游
リリース: 2021-06-30 14:52:38
オリジナル
3205 人が閲覧しました

JavaScript はコンパイル言語ではなく、インタープリタ型プログラミング言語です。 JavaScript のソース コードは、クライアントに送信して実行する前にコンパイルする必要はなく、テキスト形式の文字コードがブラウザに送信され、ブラウザが解釈して実行します。

JavaScript はコンパイル言語ですか?

このチュートリアルの動作環境: Windows7 システム、JavaScript バージョン 1.8.5、Dell G3 コンピューター。

JavaScript はコンパイル言語ではなく、インタプリタ型またはジャストインタイムでコンパイルされるプログラミング言語です。

コンパイルはソースプログラムを実行可能なターゲットコードに変換することであり、翻訳と実行は分離されていますが、インタプリタはソースプログラムの翻訳と実行を一度に完了し、保存可能なターゲットコードは生成しません。 . .

JavaScript (略して「JS」) は、関数優先度を備えた軽量のインタープリタ型またはジャストインタイムでコンパイルされるプログラミング言語です。JavaScript はプログラムの実行中に 1 行ずつ解釈されます。

JavaScript ソース コードは、クライアントに送信して実行する前にコンパイルする必要はなく、テキスト形式の文字コードがブラウザに送信され、ブラウザによる解釈と実行が行われます。直訳言語の弱点は安全性が低いことであり、JavaScript では 1 つが実行できない場合、次の言語も実行できません。解決策は、エラー情報が catch() に渡される try{}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 は、実行されるたびに主流のエンジンがコードをロードして解釈するため、リテラル翻訳言語として分類されます。 V8 は実行を開始する前にすべてのコードを解釈しますが、他のエンジンはコードを 1 行ずつ解釈します (SpiderMonkey は、パフォーマンスを向上させるために解釈された命令を一時的に保存します。これをリアルタイム コンパイルと呼びます)。 JavaScript で書かれたもの (SpiderMonkey は C で書かれたもの) を使用するため、異なるテストでは、この 2 つのパフォーマンスには長所と短所があります。これに相当するのがC言語などのコンパイル言語であり、コンパイル言語で書かれたプログラムを実行するには、まずコンパイルして機械語にコンパイルしてから実行する必要があります。

#コンパイル言語 VS インタプリタ言語

1. コンピュータとの異なる通信方法

インタプリタはターゲット コードを生成しません。ソースプログラム内のステートメントを 1 つずつ取り出して解釈して実行し、インタプリタはソースコードファイルを機械語に解釈して CPU に渡して実行します。

コンパイルとは、ソースプログラムを実行可能なターゲットコードに変換し、実行可能なプログラムファイルを実行することであり、翻訳と実行は分離されています。

2. 実行速度

インタプリタプログラムは動作効率が低く、すべてのコードをインタプリタで解釈して実行する必要があり、コンパイルしたプログラムに比べて速度が大幅に遅くなります。

コンパイルされたプログラムの実行 プログラム コードはコンピューターが理解できる機械語に翻訳されているため、高速です。

[関連する推奨事項:

JavaScript 学習チュートリアル

]

以上がJavaScript はコンパイル言語ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート