JavaScriptの豆知識30選
新しいことを覚えたら、クイズで力試し。
英語版クイズをもとにAIで日本語で作成しました。出典は日本語版ウィキペディアにリンクしています。
全部知ってた?クイズで証明しよう。
30問のクイズに挑戦Node.jsのモジュールのインストールに通常使われるツールは?
モジュールは単なるファイルとしてインストールすることもできます。このツールは依存性の扱いも含め、モジュールの構築・インストール・更新を助けます。
JavaScriptが起源を持つWebブラウザは?
現在ではウェブサイトやバックエンド、デスクトップやモバイルのアプリケーションまで、多岐にわたる用途で利用されています。
JavaScriptへの型の導入を可能にするトランスパイル言語は?
JavaScriptは動的型付けで、コード上に型表記ができないため完全な型検査は困難です。この言語は型ノーテーションを導入し、トランスパイル時に型検査を行います。
ブラウザで実行可能なバイナリ形式の命令セット「Wasm」の正式名称は?
JavaScriptを置き換えるものではなく、協調して動作するよう設計されています。C言語やC++、Rustのコードをコンパイルして、CPU負荷の高い処理をネイティブに近い速度で実行できます。
ページを再読み込みせずに新しいコンテンツを読み込む技術の名称は?
SNSでページを離れることなく新しい投稿を表示できるのはこの技術のおかげです。Gmailのようなアプリケーションがこの利点を活用し、大きなトレンドとなりました。
JavaScriptを1995年に10日間で開発したネットスケープの技術者は?
開発にあたって上司からは「Javaのような外観にしてくれ」「初心者に優しく」「Netscapeブラウザのほとんどなんでも制御できるように」という注文がありました。
Node.jsが構築されているJavaScriptエンジンは?
イベント化された入出力を扱うサーバサイドの実行環境で、Webサーバなどスケーラブルなネットワークプログラムの記述を意図して作られました。
JavaScriptのオブジェクト指向は、クラスではなく何に基づいている?
関数型の面では第一級関数をサポートし、関数を第一級オブジェクトとして扱えます。手続き型、オブジェクト指向、関数型のスタイルを併用できる言語です。
Promiseを同期的なコードのように記述できるJavaScriptの構文は?
ネットワーク越しのリクエストのような「待ち」のある処理に対処するため、JavaScriptは非同期処理をサポートしています。最も基本的な記述方法はコールバック関数です。
JavaScriptの開発当初の名称は?
改名の背景には、当時サン・マイクロシステムズのJavaが大きな注目を集めていたことと、ネットスケープがサンと業務提携していたことがありました。
米国で「JavaScript」の商標を保有している企業は?
商標はもともとサン・マイクロシステムズに発行されたもので、2009年の買収の際に譲渡されました。2024年には解放を求める書簡が回覧されています。
1996年にInternet Explorer 3.0に搭載されたJavaScript実装の名称は?
この搭載をきっかけに、手軽さからJavaScriptは急速に普及しました。ただし初期はベンダーごとの独自拡張のため、ブラウザ間の互換性は極めて低い状態でした。
新しいECMAScript構文を旧バージョンへ変換する目的で最も広く使われるツールは?
こうしたトランスパイラにより、開発者は最新の言語機能を使いながら古いブラウザとの互換性を維持できます。別の言語からJavaScriptへの変換にも使われます。
ブラウザで最も基本的なセキュリティ機構とされるのは?
あるオリジンから読み込まれた文書やスクリプトが、他のオリジンのリソースにアクセスすることを制限します。ログイン中の銀行サイトの情報を悪意あるサイトが盗むのを防ぐ仕組みです。
XSSなどの攻撃を検知・軽減するセキュリティレイヤー「CSP」の正式名称は?
サイト管理者は信頼できるスクリプトの取得元ドメインをHTTPヘッダで指定でき、許可されていないドメインからの読み込みはブラウザに拒否されます。
JavaScriptへトランスパイルされるプログラミング言語の総称は?
新しい言語を定義してそのコードをJavaScriptに変換することで、新たな演算子や記法を導入できます。代表例にCoffeeScriptやPureScriptがあります。
C言語で実装された、最初のJavaScriptエンジンの名称は?
作者自身がNetscape Navigatorのために作成したものです。全てJavaで記述されたエンジンRhinoも、後にGoogleへ移籍するNorris Boydらによって作られました。
2024年9月、JavaScript商標の解放を求める書簡を先頭に立って主導した人物は?
この人物はNode.jsの作者でもあります。書簡にはJavaScriptの生みの親も賛同し、署名者は14,000人を超えました。
非同期処理のNode.jsでは起きないとされる問題は?
解決の中核となったのは、シングルスレッドでの非同期処理を容易に実装できるイベント駆動型プログラミング環境です。
JavaScriptの中核仕様がEcmaインターナショナルで標準化された年は?
Ecmaインターナショナルは通信に関する標準を策定する国際団体です。標準化以降、実装間の互換性は向上し、DOMなど関連仕様の互換性も高まりました。
JavaScriptでグローバルオブジェクトを指す標準の名前は?
グローバルオブジェクトはコードの最上階層に属します。各実行環境はこれとは別に、ブラウザのDOM APIやNode.jsのfs APIといった独自のAPIを提供しています。
XSS対策で、innerHTMLの代わりに用いるべきプロパティは?
XSSはユーザーの入力を無害化せずにHTMLへ挿入することで発生し、セッション情報の窃取やページの改ざんにつながります。
ECMAScript 4が破棄され、ECMAScript 5が標準化された年は?
標準化作業がMozillaやAdobe、Googleらの推す案と、MicrosoftやYahoo!の推すECMAScript 3.1に分裂した影響で、2008年8月に大きな方針転換がありました。
MozillaがECMAScript 4の案に文法を一部取り込んだ言語は?
Mozillaはこの案を自身でも実装していました。2006年の時点では、この仕様に基づいてJavaScript 2.0を作成することを表明していました。
2000〜2003年のJavaScript 2.0構想がまとまらなかった原因は?
このときネットスケープが提案していた案はアドビのActionScript 2.0に、マイクロソフトの案はJScript .NETへと引き継がれました。
ECMAScript 4に入る予定だった機能が先送りされた計画の名称は?
この計画は後にECMAScript 2015として標準化が完了しました。ECMAScript 5以降、Mozillaの実装もECMAScriptへの準拠を謳うようになり、JavaScript 2.0は事実上死語となりました。
Node.jsがWindowsの非同期I/O環境IOCPに対応するために作成したライブラリは?
この抽象化により、Unix系プラットフォームとWindows向けの両方のリリースが可能になりました。Windowsネイティブ版のリリースにはマイクロソフトの支援がありました。
Node.jsの作者を雇用し、その成長を支援した企業は?
Node.jsは2009年に作成されました。PythonのTwistedやRubyのEventMachineと同様の目的を持つ、イベント駆動のサーバサイド環境です。
「JavaScript」の米国商標が最初に発行された日は?
発行先はサン・マイクロシステムズでした。2009年の買収に伴い、商標は現在の保有企業に譲渡されています。
JavaScript商標の解放を求める書簡の署名者は何人以上?
署名者の中にはJavaScriptの生みの親も含まれていました。この商標は2009年の企業買収の際に現在の保有者へ譲渡されたものです。