ホームページ  >  記事  >  ウェブフロントエンド  >  基礎から熟練まで - JavaScript言語

基礎から熟練まで - JavaScript言語

零下一度
零下一度オリジナル
2017-06-26 11:50:371060ブラウズ

JavaScript は、オブジェクト指向機能を備えたインタープリタ型プログラミング言語です。これは、オブジェクトおよび時間駆動型で比較的安全なクライアント側のスクリプト言語です。言語環境で実行する必要がないため、それをサポートするブラウザのみが必要です。その主な目的は、サーバーに送信されるデータを検証し、Web インタラクションを強化し、ユーザー エクスペリエンスを向上させることです。

通訳された言語とコンパイルされた言語の違い

。コンパイル済み言語

: この種の言語には、プログラムの実行時にコンパイル プロセスがありますが、機械語にコンパイルされますが、バイトコードにコンパイルされます。たとえば、Java 言語が実行されている場合、JVM はバイトコードをマシン語に変換します。 JVM は Java 仮想マシンであり、架空のコンピューターです。

ただし、インタープリタ言語のコンパイル効率は、コンパイル言語よりも遅くなります。JavaScript はインタープリタ言語です。 js はブラウザ上でプログラムを解析する際、ブラウザ上で独自の解釈エンジンを使用します。 JavaScript v8 エンジン。ブラウザコアが js をコンパイルしてビューを作成するとき、「字句解析」、「文法解析」、「コード生成」の 3 つの段階を通過する必要があります。これはコンパイル言語の明らかな特徴です。詳細については、『Rhinoceros Book』の第 2 章および『あなたの知らない JavaScript』の第 1 章を参照してください。

JavaコードはJVMによって実行されます

JavaScriptはJavaScriptインタプリタによって実行されます

各ブラウザは異なり、通常は各ブラウザのカーネルに含まれていますブラウザカーネルには通常2つのエンジンが含まれています:

ページレイアウトエンジン

JSエンジン

IEは独自のTridentカーネルを使用します

FireFoxはGeckoカーネルですOperaはPrestoカーネルですSafariはWebkitカーネルを使用します

ChromeはGoogle独自のものです JavaScript V8エンジンはWebkitカーネルを使用しますネルページ レイアウトの場合、JavaScript はスクリプト言語であり、インタプリタ言語でもあります。スクリプト言語はコンパイルする必要がなく、インタプリタによって直接解釈できます。先ほどの JavaScript はコンパイル言語であるという議論から判断すると、JavaScript もコンパイル言語です。スクリプト言語として一般化することはできません。スクリプト言語を理解する方法は簡単です。

xxx.exe というプログラムを作成します。.exe をクリックして、拡張子 .aa を持つファイルを開きます。次に、.aa ファイルを作成するためのルールを指定しました。これは、スクリプトの動作とその関係を示し、プログラムを順番に実行するための命令です。

ブラウザ カーネルにおける JavaScript の関係と原則を理解する

ブラウザのページ解析とレンダリングの原則

:

これについて言えば、Google Chrome のレンダリング エンジンであるおなじみの Webkit について触れなければなりません。他のブラウザのレンダリング エンジンは同じではなく、各ブラウザのコア エンジンに一貫性がないため、ページ構造をレイアウトする HTML コードを作成する過程で、主要なブラウザとの多くの互換性の問題に対処する必要があります。

ブラウザの最も重要かつ核となる部分は、ブラウザ カーネルである解釈エンジンです。 Web ページが適切に動作するには、レンダリング エンジンと解釈エンジンという 2 つのエンジンを使用する必要があります。互換性を記述するさまざまな方法は、これらのブラウザ カーネル エンジンを対象としています。では、現在の主流のブラウザコアは何でしょうか?

現在市場に出ている4大ブラウザ

IE

使用されているブラウザコアはTrident(4つのコアの中で最も遅い)です

ウィンドウの市場シェアにより、IEブラウザの地位のおかげで、この状況のた​​め、Microsoft は長い間 Trident を更新しておらず、解決できない多数のバグやセキュリティ問題を抱えています。 Firefoxブラウザの台頭。ただし、その市場シェアのせいで、現在フロントエンド開発エンジニアにとって最も厄介な互換性の問題は、IE の一部の下位バージョンに関するものです。

FireFox

使用されるブラウザカーネルは Gecko

オープンソースコード、高速な操作と処理速度。オープンソースのものは、大多数の猿にとって常に歓迎されやすいものです。また、Gecko を使用するブラウザは数多くあり、通常は一部の外国のブラウザで使用されています。国内のことはあまり考えないでください!

Webページレイアウトエンジン。簡単に言うと、レンダリング速度を向上させるために高度に最適化されています。とにかく効率と速度が重要です。ただし、メリットとデメリットがあり、互換性を犠牲にして速度が向上します。言うまでもなく、これはすべてのブラウザ コアの中で最も高速に解析される JavaScript です。しかし現在、フロントエンドの開発が非常に速いため、ユーザー エクスペリエンスが優先されており、速度のために互換性を犠牲にすることはできません。 Opera は presto を停止し、Google の Blink カーネルに切り替えました。

Chrome

使用されるブラウザコアは、WebkitレンダリングエンジンJavaScript v8解釈エンジンです

言うべきことは上で説明されているため、ここではこれ以上説明しません。これは Chrome ブラウザの中核でもあり、多くの人がフロントエンドについて学び始めており、ほとんどのフロントエンド エンジニアが好むものです。これは Apple 独自のコアです。 そして、いわゆる「シェルブラウザ」になります。その理由は、Trident はオープンカーネルであるため、国内市場にはこのようなシェルブラウザが多数存在します。たとえば、360、Tencent TT、Cheetah、Aoyou などは、デュアルコアまたはマルチコア方式を使用しており、そのうちの 1 つは Trident コアであり、他のコアは他のコアに追加されます。国内ブラウザメーカーは一般に、この状況をユーザーが切り替えるための「高速ブラウジングモード」と「互換ブラウジングモード」の2種類に分けており、このうちIEカーネルTridentは「互換ブラウジングモード」であるため、国内メーカーが適用している。 IE カーネルのバージョンはそれほど高くなく、Trident の反復更新速度に追いつくことができません。IE カーネルの下位バージョンは小さすぎるため、ユーザーがダウンロードするのに便利です。したがって、これまで、開発当初から広くバンドルされ、インストールされ、使用されてきましたが、セキュリティ上の問題が発生します。众 上記の問題が提起されるにつれて、解決と認識は段階的に行われます。私たちはインタープリター言語とは何か、コンパイル言語とは何かを知っています。私はインタプリタ言語を通じてブラウザ カーネルについて知りました。それらの違いのいくつかは、コードを書くプロセスに密接に関係しています。 Web フロントエンドを学習する過程、または常に自分自身を向上させる過程において、JavaScript を理解し、知ることが最も重要でなければなりません。 JavaScript の開発過程において、集中して JavaScript を勉強する必要があると思ったことのある友人も多いのではないでしょうか?今後、誰かがあなたに相談して、言語を学びたい、または新しい言語をマスターしたいと思ったら、あなたはその人に JavaScript を勧める必要があります。それは JavaScript でなければなりません。最初に JavaScript の開発を推進した jQuery の出現から、人々が JavaScript を真にアクセスできるようにした html5 まで、そして現在は、nodejs に至っています。これは、ほとんどの人の JavaScript に対するこれまでの見方を完全に覆します。これらの新しいフレームワークの登場により、JavaScript はまさに無限の可能性を秘めています。

HTML5 は JavaScript の高度なコンテンツです

HTML5 と聞くと HTML を連想する人がまだたくさんいますが、それらの間には何か相関関係があるのでしょうか?しかし、いくつかの最適化が行われ、いくつかの新しいタグが追加されました。新しいタグは理解するのが難しくなく、使いやすいものになっています。なぜこれらが HTML の基本部分として定義されているのでしょうか。 HTML5 の真の能力は、JavaScript を通じてタグを作成し、カーネルの 2 つの特性を使用してそれぞれ解釈およびレンダリングできることです。Canvas は、アニメーション、特殊効果、ゲームなどの強力な機能でもよく知られています。データの視覚化。すべてを有効にするには、JavaScript とバックグラウンド サポートが必要です。すべては JavaScript のおかげです。 webgl は、HTML5 キャンバス描画 3D 画像効果をサポートしています。 html5の地理的位置支出はLBSアプリケーションなどを通じてブラウザ上に表示されます。 JavaScript と文書データベースの間の接続は、あまりにも多くの不可能を実現しました。 ECMAscript のバージョンは常に反復的に更新されており、vuejs、angularjs、reactjs など、これをベースにした JS フレームワークが多すぎます...

以上が基礎から熟練まで - JavaScript言語の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。