ホームページ ウェブフロントエンド jsチュートリアル JavaScript の userAgent 属性を使用してブラウザの種類を判断する方法

JavaScript の userAgent 属性を使用してブラウザの種類を判断する方法

Jan 12, 2019 pm 02:01 PM

ブラウザの種類を判断するには、JavaScript で提供されている Navigator オブジェクトの userAgent 属性を使用します。これは、JavaScript を実行しているブラウザの種類やバージョンなどの情報を取得できる唯一の属性です。を使用しますが、ブラウジングを間違えるとプロセッサの順序の判断を間違いやすいので注意が必要です。

JavaScript の userAgent 属性を使用してブラウザの種類を判断する方法

まず userAgent 属性の基本的な構文を見てみましょう

window.navigator.userAgent;
ログイン後にコピー

このようにして、「ブラウザ情報を記述した文字列「文字列」を戻り値として返します。

ポイントは最後まで情報を文字列として取得することです!

そのため、indexOf()などのメソッドを利用して、文字情報の中からブラウザの種類とバージョンを抽出する必要があります。

ブラウザ情報を取得するにはどうすればよいですか?

実際にブラウザの種類を取得するプログラムを作成してみましょう。

まず、userAgent 属性からブラウザ情報を取得します。

//方法①
var agent = window.navigator.userAgent;
//方法②
var agent = window.navigator.userAgent.toLowerCase();
ログイン後にコピー

方法①通常通りuserAgent属性を使用しますが、②最後にtoLowerCase()を実行します。

実際には、取得されるブラウザ情報は大文字と小文字が混在する文字列なので、基本的にすべて小文字か大文字かの方が判断しやすいです。

ということで、大まかに言うと②の方法で書いていきます!

var agent = window.navigator.userAgent.toLowerCase();
var result = agent.indexOf('chrome') > -1;
console.log(result);
ログイン後にコピー

この例では、indexOf()を利用してブラウザ情報から取得したテキスト「chrome」が存在するかどうかを確認しています。

そうでない場合は「-1」を返し、存在する場合は「文字位置」を返します。

したがって、「> -1」の比較により、「真/偽​​」が得られるので、判定することができます。

ブラウザ判定

現在主流のブラウザとして「IE」「Chrome」「Safari」「Firefox」など様々なブラウザがあります

各ブラウザがどのように判断されるかを見てみましょう。

一般的に各ブラウザ名は基本的にIF文により順番に判定されます。

var agent = window.navigator.userAgent.toLowerCase();
if(agent.indexOf('msie') > -1) { 
  console.log('IE浏览器'); 
} else if(agent.indexOf('edge') > -1) { 
  console.log('Edge浏览器');
} else if(agent.indexOf('chrome') > -1) {
  console.log('Chrome浏览器');
} else if(agent.indexOf('safari') > -1) {
  console.log('Safari浏览器');
} else if(agent.indexOf('firefox') > -1) {
  console.log('Firefox浏览器');
} else {
  console.log('其他浏览器');
}
ログイン後にコピー

この例では、userAgent を使用してブラウザ情報を取得し、indexOf() で各ブラウザ名を順番に決定します。

冒頭でも少し紹介しましたが、比較する順番はとても重要です!

実際、userAgent 属性を使用して Edge ブラウザを検査すると、「chrome」と「safari」という文字が含まれています。

また、Chrome に「safari」という単語が含まれていることを確認してください。

このように、本来のブラウザとは異なる名称が含まれる場合もあるため、まずは調査対象のブラウザを比較する必要があります。

基本的には「Edge」→「Chrome」→「Safari」の順番だけは確保しましょう!

以上がJavaScript の userAgent 属性を使用してブラウザの種類を判断する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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

ホット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ヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

独自のJavaScriptライブラリを作成および公開するにはどうすればよいですか? 独自のJavaScriptライブラリを作成および公開するにはどうすればよいですか? Mar 18, 2025 pm 03:12 PM

記事では、JavaScriptライブラリの作成、公開、および維持について説明し、計画、開発、テスト、ドキュメント、およびプロモーション戦略に焦点を当てています。

ブラウザでのパフォーマンスのためにJavaScriptコードを最適化するにはどうすればよいですか? ブラウザでのパフォーマンスのためにJavaScriptコードを最適化するにはどうすればよいですか? Mar 18, 2025 pm 03:14 PM

この記事では、ブラウザでJavaScriptのパフォーマンスを最適化するための戦略について説明し、実行時間の短縮、ページの負荷速度への影響を最小限に抑えることに焦点を当てています。

フロントエンドのサーマルペーパーレシートのために文字化けしたコード印刷に遭遇した場合はどうすればよいですか? フロントエンドのサーマルペーパーレシートのために文字化けしたコード印刷に遭遇した場合はどうすればよいですか? Apr 04, 2025 pm 02:42 PM

フロントエンドのサーマルペーパーチケット印刷のためのよくある質問とソリューションフロントエンド開発におけるチケット印刷は、一般的な要件です。しかし、多くの開発者が実装しています...

ブラウザ開発者ツールを使用してJavaScriptコードを効果的にデバッグするにはどうすればよいですか? ブラウザ開発者ツールを使用してJavaScriptコードを効果的にデバッグするにはどうすればよいですか? Mar 18, 2025 pm 03:16 PM

この記事では、ブラウザ開発者ツールを使用した効果的なJavaScriptデバッグについて説明し、ブレークポイントの設定、コンソールの使用、パフォーマンスの分析に焦点を当てています。

誰がより多くのPythonまたはJavaScriptを支払われますか? 誰がより多くのPythonまたはJavaScriptを支払われますか? Apr 04, 2025 am 12:09 AM

スキルや業界のニーズに応じて、PythonおよびJavaScript開発者には絶対的な給与はありません。 1. Pythonは、データサイエンスと機械学習でさらに支払われる場合があります。 2。JavaScriptは、フロントエンドとフルスタックの開発に大きな需要があり、その給与もかなりです。 3。影響要因には、経験、地理的位置、会社の規模、特定のスキルが含まれます。

ソースマップを使用して、マイナイドJavaScriptコードをデバッグするにはどうすればよいですか? ソースマップを使用して、マイナイドJavaScriptコードをデバッグするにはどうすればよいですか? Mar 18, 2025 pm 03:17 PM

この記事では、ソースマップを使用して、元のコードにマッピングすることにより、Minified JavaScriptをデバッグする方法について説明します。ソースマップの有効化、ブレークポイントの設定、Chrome DevtoolsやWebpackなどのツールの使用について説明します。

JavaScriptを使用して、同じIDを持つArray要素を1つのオブジェクトにマージする方法は? JavaScriptを使用して、同じIDを持つArray要素を1つのオブジェクトにマージする方法は? Apr 04, 2025 pm 05:09 PM

同じIDを持つ配列要素をJavaScriptの1つのオブジェクトにマージする方法は?データを処理するとき、私たちはしばしば同じIDを持つ必要性に遭遇します...

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

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

See all articles