検索

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

Jun 26, 2017 am 11:50 AM
javascriptjs原理ベース

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 までご連絡ください。
JavaScriptエンジン:実装の比較JavaScriptエンジン:実装の比較Apr 13, 2025 am 12:05 AM

さまざまなJavaScriptエンジンは、各エンジンの実装原則と最適化戦略が異なるため、JavaScriptコードを解析および実行するときに異なる効果をもたらします。 1。語彙分析:ソースコードを語彙ユニットに変換します。 2。文法分析:抽象的な構文ツリーを生成します。 3。最適化とコンパイル:JITコンパイラを介してマシンコードを生成します。 4。実行:マシンコードを実行します。 V8エンジンはインスタントコンピレーションと非表示クラスを通じて最適化され、Spidermonkeyはタイプ推論システムを使用して、同じコードで異なるパフォーマンスパフォーマンスをもたらします。

ブラウザを超えて:現実世界のJavaScriptブラウザを超えて:現実世界のJavaScriptApr 12, 2025 am 12:06 AM

現実世界におけるJavaScriptのアプリケーションには、サーバー側のプログラミング、モバイルアプリケーション開発、モノのインターネット制御が含まれます。 2。モバイルアプリケーションの開発は、ReactNativeを通じて実行され、クロスプラットフォームの展開をサポートします。 3.ハードウェアの相互作用に適したJohnny-Fiveライブラリを介したIoTデバイス制御に使用されます。

next.jsを使用してマルチテナントSaaSアプリケーションを構築する(バックエンド統合)next.jsを使用してマルチテナントSaaSアプリケーションを構築する(バックエンド統合)Apr 11, 2025 am 08:23 AM

私はあなたの日常的な技術ツールを使用して機能的なマルチテナントSaaSアプリケーション(EDTECHアプリ)を作成しましたが、あなたは同じことをすることができます。 まず、マルチテナントSaaSアプリケーションとは何ですか? マルチテナントSaaSアプリケーションを使用すると、Singの複数の顧客にサービスを提供できます

next.jsを使用してマルチテナントSaaSアプリケーションを構築する方法(フロントエンド統合)next.jsを使用してマルチテナントSaaSアプリケーションを構築する方法(フロントエンド統合)Apr 11, 2025 am 08:22 AM

この記事では、許可によって保護されたバックエンドとのフロントエンド統合を示し、next.jsを使用して機能的なedtech SaaSアプリケーションを構築します。 FrontEndはユーザーのアクセス許可を取得してUIの可視性を制御し、APIリクエストがロールベースに付着することを保証します

JavaScript:Web言語の汎用性の調査JavaScript:Web言語の汎用性の調査Apr 11, 2025 am 12:01 AM

JavaScriptは、現代のWeb開発のコア言語であり、その多様性と柔軟性に広く使用されています。 1)フロントエンド開発:DOM操作と最新のフレームワーク(React、Vue.JS、Angularなど)を通じて、動的なWebページとシングルページアプリケーションを構築します。 2)サーバー側の開発:node.jsは、非ブロッキングI/Oモデルを使用して、高い並行性とリアルタイムアプリケーションを処理します。 3)モバイルおよびデスクトップアプリケーション開発:クロスプラットフォーム開発は、反応および電子を通じて実現され、開発効率を向上させます。

JavaScriptの進化:現在の傾向と将来の見通しJavaScriptの進化:現在の傾向と将来の見通しApr 10, 2025 am 09:33 AM

JavaScriptの最新トレンドには、TypeScriptの台頭、最新のフレームワークとライブラリの人気、WebAssemblyの適用が含まれます。将来の見通しは、より強力なタイプシステム、サーバー側のJavaScriptの開発、人工知能と機械学習の拡大、およびIoTおよびEDGEコンピューティングの可能性をカバーしています。

javascriptの分解:それが何をするのか、なぜそれが重要なのかjavascriptの分解:それが何をするのか、なぜそれが重要なのかApr 09, 2025 am 12:07 AM

JavaScriptは現代のWeb開発の基礎であり、その主な機能には、イベント駆動型のプログラミング、動的コンテンツ生成、非同期プログラミングが含まれます。 1)イベント駆動型プログラミングにより、Webページはユーザー操作に応じて動的に変更できます。 2)動的コンテンツ生成により、条件に応じてページコンテンツを調整できます。 3)非同期プログラミングにより、ユーザーインターフェイスがブロックされないようにします。 JavaScriptは、Webインタラクション、シングルページアプリケーション、サーバー側の開発で広く使用されており、ユーザーエクスペリエンスとクロスプラットフォーム開発の柔軟性を大幅に改善しています。

pythonまたはjavascriptの方がいいですか?pythonまたはjavascriptの方がいいですか?Apr 06, 2025 am 12:14 AM

Pythonはデータサイエンスや機械学習により適していますが、JavaScriptはフロントエンドとフルスタックの開発により適しています。 1. Pythonは、簡潔な構文とリッチライブラリエコシステムで知られており、データ分析とWeb開発に適しています。 2。JavaScriptは、フロントエンド開発の中核です。 node.jsはサーバー側のプログラミングをサポートしており、フルスタック開発に適しています。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

mPDF

mPDF

mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

SecLists

SecLists

SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。

EditPlus 中国語クラック版

EditPlus 中国語クラック版

サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

SublimeText3 Linux 新バージョン

SublimeText3 Linux 新バージョン

SublimeText3 Linux 最新バージョン

Dreamweaver Mac版

Dreamweaver Mac版

ビジュアル Web 開発ツール