検索
ホームページウェブフロントエンドjsチュートリアルConsole.log()を超えて、デバッグスキルをレベルアップします

Beyond Console.log() – Level up Your Debugging Skills

ブラウザ開発者ツールは、<code>console.log()よりもはるかに多く、その強力な機能により開発効率が大幅に向上する可能性があります。この記事では、ワークフローを最適化するのに役立つあまり知られていない実用的なヒントについて説明します。

コアポイント

  • ログの特定の変更を探すことなく、コンソールのリアルタイム式を使用して、リアルタイムでスクリプトの変更を監視します。
  • コンソールを使用して現在のドキュメントを直接操作し、<code>$_を使用して最後のコマンドの結果を取得し、<code><code>から
  • にチェックされた要素のスタックにアクセスします。
  • より強力なスクリプト編集環境のコンソールから「ソース」パネルに切り替え、マルチラインスクリプティングとWebページとの複雑な相互作用をサポートします。
  • ショートカットキー(Ctrl Shift Pなど)を使用して、コマンドメニューを介して開発者ツールにすばやくアクセスして、デバッグプロセスを簡素化します。
  • ワークスペースをセットアップすることにより、デバッグと開発のシームレスな統合、ブラウザー開発者ツールで作成された変更を直接ソースコードに同期させます。
  • VSコード拡張機能とリアルタイムサイトのデバッグを組み合わせて、VSコード拡張機能を備えたDevToolsを介して、Visual Studioコードをブラウザ開発者ツールと統合します。

快適なゾーンから脱出

開発者は、効率の向上を制限する可能性のあるワークフローを固定するためによく使用されます。一般的なプロセスは、エディターにコードを書き、保存してブラウザに切り替えてロードし、開発者ツールを使用してCSSを調整し、サイジングとモバイルシミュレーションテストを実行します。ライン番号とデバッグ情報に密接に関連している

ステートメントを追加してデバッグ。 <code>console.log()

この方法は非効率的で混乱しています。ブラウザツールには、最終製品に属さないデバッグ情報が入っています。これにより、他の人が理解するのが難しくなるだけでなく、初心者の開発者にトラブルを引き起こします。開発者ツールの機能のごく一部しか使用しておらず、効率を向上させる機会を逃しました。

この記事では、Visual StudioコードにChromiumブラウザー開発者ツールと実用的な機能を紹介します。まず、コンソールに飛び込みましょう。

高度なコンソールスキル

デバッグのためにコードに

を追加することに慣れています。しかし、これは時々非効率的であり、元の形式のデータを理解するのは困難です。 <code>console.log(thing)

GitHubで次のヒントを取得し、開発者ツールが開かれているブラウザで表示できます。 (または、Codepenのオンラインデモをチェックしてください)

最初に、変数値を印刷するだけでなく、簡単な追跡のために変数名を表示するだけでなく、ログに巻き毛のブレースを追加します。

let x = 2;
console.log(x) // 2
console.log({x}) // {x: 2}

フォーマットlog

パーセントサインから始まるフォーマット仕様を使用すると、特定の値を異なる形式で記録できます。
  • <code>%s:文字列
  • として記録します
  • <code>%iまたは<code>%d:整数として記録
  • <code>%f:フローティングポイント番号として記録
  • <code>%o:拡張可能なDOM要素として記録
  • <code>%O:拡張可能なjavaScriptオブジェクトレコードとして

これらの指定器は、交換とパラメーターの順序の組み合わせで使用できます。

let x = 2;
console.log(x) // 2
console.log({x}) // {x: 2}
タイプ変換も実行できます:

console.log('%ix %s developer', 10, 'console');
// 10x console developer

仕様により、CSSスタイルのログメッセージが許可されています <code>%c

console.log('%i', 12.34455241234324234); // 12
グループログ

を備えたグループログを簡単に拡張して崩壊させるため:

<code>console.group()

console.log('%cPay attention to me','color:firebrick;font-size:40px')

Beyond Console.log() – Level up Your Debugging Skills デフォルトでグループを拡張せずにグループをネストして使用できます:

<code>console.groupCollapsed()

const label = 'The Millenium Falcon Crew';
console.group(label);
console.log('Leia');
console.log('Han');
console.log('Chewie');
console.log('Ben');
console.groupEnd(label);

Beyond Console.log() – Level up Your Debugging Skills logフィルタリング

、および

を使用して、コンソールサイドバーまたはレベルセレクターを使用してメッセージをフィルタリングして、多数のログで特定の情報を見つけることができます。 <code>console.info() <code>console.error() <code>console.warn()

Beyond Console.log() – Level up Your Debugging Skills その他の便利なコンソールメソッド

および

メソッドは、メソッド呼び出しまたは関数の実行回数をカウントできます:

<code>console.count() <code>console.countReset()

メソッドは、スクリプト実行時間を測定できます:
const extendedlabel = 'The Millenium Falcon Crew extended';
const meat = 'Humanoids';
const metal = 'Droids';
console.group(extendedlabel);
console.groupCollapsed(meat);
console.log('Leia');
console.log('Han');
console.log('Chewie');
console.log('Ben');
console.groupEnd(meat);
console.group(metal);
console.log('R2D2');
console.log('C3PO');
console.groupEnd(metal);
console.groupEnd(extendedlabel);

<code>console.time()

データのコンテンツとタイプを表示し、
console.count('Chocula'); // Chocula: 1
console.count(); // default: 1
console.count('Chocula'); // Chocula: 2
console.countReset('Chocula'); 
console.count(); // default: 2 
console.count(); // default: 3
console.count('Chocula'); // Chocula: 1
ノードのXML表現を表示し、

jsonデータをソート可能なテーブルに表示します。 <code>console.dir() <code>console.dirxml()<code>console.table()ログをリアルタイム式に置き換えます

頻繁に変更される値を頻繁に変更することは非効率的です。リアルタイムの表現はこの問題を解決できます。開発者ツールでアイボタンを有効にし、コンソールの上に値が表示される有効なJavaScript式を入力します。

たとえば、

<code>console.log()を入力すると、式はページに現在アクティブ化されている要素が表示されます。

リアルタイムの表現は耐久性があり、特定のドメイン名またはサイトとは何の関係もありません。エラーを回避するために、デバッグが完了した後に削除する必要があります。 <code>document.activeElement

リアルタイム式は、特にマウスの位置などの頻繁に変化する値を変更するために、スクリプトデータの変更を監視するのに最適です。

コンソールを使用して、現在のドキュメントコンソールは、JavaScriptを書き込み、実行し、オートコンプリート機能を使用して現在のドキュメントの利用可能な方法とプロパティを理解できるREPLです。

コンソールは、多くの便利な方法とショートカットも提供しています:

  • <code>$_:最後のコマンドの結果を保存します。
  • <code><code>to
  • :ごく最近チェックされた要素スタック。
  • <code>$()<code>$$()および<code>document.querySelector():それぞれ<code>document.querySelectorAll()および
  • <code>$x()
  • :XPathを使用してDOM要素を選択します。
  • <code>copy()
  • :コンテンツをクリップボードにコピーします。
  • <code>clear()
  • :コンソールをクリアします。
  • <code>getEventListeners(node)
  • :ノードのすべてのイベントリスナーをリストします。
  • <code>monitorEvents(node, events)
  • :ノードでイベントを監視および記録します。
  • <code>monitor(method)
  • :メソッドを呼び出すときにログアイテムを作成します。

コンソールからソースパネルへのコンソールからコンソールのシングルライン環境は、コードの書き込みを制限します。 Multi-Lineスクリプトは、Shift Enterを使用して記述できます。 ソースパネルは、より強力なスクリプト編集環境を提供します。

Developer Toolsコマンドメニュー

コマンドメニュー(Ctrl Shift PまたはCMD Shift P)を使用すると、キーボードを介してすべての開発者ツール機能にアクセスできます。

code snippet

コードスニペットは、ドキュメントと対話するスクリプトを保存する便利な方法です。現在開いているブラウザのドキュメントとコンソールにアクセスする便利な方法があります。

カバレッジ

上書きは、リモートファイルのローカルコピーです。ブラウザ開発者ツールは、リモートファイルをローカルコピーに置き換え、ウェブサイトスタイルのシートを編集したり、パフォーマンステストを実行したりすることができます。

ワークスペース:シンクロナス開発とデバッグタスク

ワークスペースを使用すると、開発者ツールにプロジェクトフォルダーを追加して、開発者ツールとエディターを同期させることができます。 VSコード拡張機能のための

devtools VSコード拡張機能のDevToolsは、Visual Studio Codeとブラウザ開発者ツールを統合し、強力な編集機能とリアルタイムサイトのデバッグを組み合わせて統合します。

次のステップ

ブレークポイントのデバッグを使用することを学ぶことをお勧めします。これは、より効果的なデバッグ方法です。

javaScriptデバッグスキルfaq

(元のテキストのFAQの一部はここで省略されています。これは、コンテンツのこの部分が記事の主なテーマとはほとんど関係がなく、長いため、それを保持すると擬似オリジナルの記事が冗長になるようになります。)

以上がConsole.log()を超えて、デバッグスキルをレベルアップしますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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

はじめに私はあなたがそれを奇妙に思うかもしれないことを知っています、JavaScript、C、およびブラウザは正確に何をしなければなりませんか?彼らは無関係であるように見えますが、実際、彼らは現代のウェブ開発において非常に重要な役割を果たしています。今日は、これら3つの間の密接なつながりについて説明します。この記事を通して、JavaScriptがブラウザでどのように実行されるか、ブラウザエンジンでのCの役割、およびそれらが協力してWebページのレンダリングと相互作用を駆動する方法を学びます。私たちは皆、JavaScriptとブラウザの関係を知っています。 JavaScriptは、フロントエンド開発のコア言語です。ブラウザで直接実行され、Webページが鮮明で興味深いものになります。なぜJavascrを疑問に思ったことがありますか

node.jsは、型を使用してストリーミングしますnode.jsは、型を使用してストリーミングしますApr 30, 2025 am 08:22 AM

node.jsは、主にストリームのおかげで、効率的なI/Oで優れています。 ストリームはデータを段階的に処理し、メモリの過負荷を回避します。大きなファイル、ネットワークタスク、リアルタイムアプリケーションの場合。ストリームとTypeScriptのタイプの安全性を組み合わせることで、パワーが作成されます

Python vs. JavaScript:パフォーマンスと効率の考慮事項Python vs. JavaScript:パフォーマンスと効率の考慮事項Apr 30, 2025 am 12:08 AM

PythonとJavaScriptのパフォーマンスと効率の違いは、主に以下に反映されています。1)解釈された言語として、Pythonはゆっくりと実行されますが、開発効率が高く、迅速なプロトタイプ開発に適しています。 2)JavaScriptはブラウザ内の単一のスレッドに限定されていますが、マルチスレッドおよび非同期I/Oを使用してnode.jsのパフォーマンスを改善でき、両方とも実際のプロジェクトで利点があります。

JavaScriptの起源:その実装言語の調査JavaScriptの起源:その実装言語の調査Apr 29, 2025 am 12:51 AM

JavaScriptは1995年に発信され、Brandon Ikeによって作成され、言語をCに実現しました。 2。JavaScriptのメモリ管理とパフォーマンスの最適化は、C言語に依存しています。 3. C言語のクロスプラットフォーム機能は、さまざまなオペレーティングシステムでJavaScriptを効率的に実行するのに役立ちます。

舞台裏:JavaScriptをパワーする言語は何ですか?舞台裏:JavaScriptをパワーする言語は何ですか?Apr 28, 2025 am 12:01 AM

JavaScriptはブラウザとnode.js環境で実行され、JavaScriptエンジンに依存してコードを解析および実行します。 1)解析段階で抽象的構文ツリー(AST)を生成します。 2)ASTをコンパイル段階のバイトコードまたはマシンコードに変換します。 3)実行段階でコンパイルされたコードを実行します。

PythonとJavaScriptの未来:傾向と予測PythonとJavaScriptの未来:傾向と予測Apr 27, 2025 am 12:21 AM

PythonとJavaScriptの将来の傾向には、1。Pythonが科学コンピューティングの分野での位置を統合し、AI、2。JavaScriptはWebテクノロジーの開発を促進します。どちらもそれぞれのフィールドでアプリケーションシナリオを拡大し続け、パフォーマンスをより多くのブレークスルーを行います。

Python vs. JavaScript:開発環境とツールPython vs. JavaScript:開発環境とツールApr 26, 2025 am 12:09 AM

開発環境におけるPythonとJavaScriptの両方の選択が重要です。 1)Pythonの開発環境には、Pycharm、Jupyternotebook、Anacondaが含まれます。これらは、データサイエンスと迅速なプロトタイピングに適しています。 2)JavaScriptの開発環境には、フロントエンドおよびバックエンド開発に適したnode.js、vscode、およびwebpackが含まれます。プロジェクトのニーズに応じて適切なツールを選択すると、開発効率とプロジェクトの成功率が向上する可能性があります。

JavaScriptはCで書かれていますか?証拠を調べるJavaScriptはCで書かれていますか?証拠を調べるApr 25, 2025 am 12:15 AM

はい、JavaScriptのエンジンコアはCで記述されています。1)C言語は、JavaScriptエンジンの開発に適した効率的なパフォーマンスと基礎となる制御を提供します。 2)V8エンジンを例にとると、そのコアはCで記述され、Cの効率とオブジェクト指向の特性を組み合わせて書かれています。3)JavaScriptエンジンの作業原理には、解析、コンパイル、実行が含まれ、C言語はこれらのプロセスで重要な役割を果たします。

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衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

SublimeText3 英語版

SublimeText3 英語版

推奨: Win バージョン、コードプロンプトをサポート!

mPDF

mPDF

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

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強力な PHP 統合開発環境