SlideShare a Scribd company logo
Google Chrome
DevTools features
_by Oleksii Prohonnyi
OVERVIEW
Google Chrome DevTools features overview
Chrome Developer Tools
 The Chrome Developer Tools (DevTools for short), are a set of web
authoring and debugging tools built into Google Chrome. The DevTools
provide web developers deep access into the internals of the browser and
their web application. Use the DevTools to efficiently track down layout
issues, set JavaScript breakpoints, and get insights for code optimization.
 Sections: Elements, Resources, Network, Sources, Timeline, Profiles,
Audits, Console
 https://developer.chrome.com/devtools
 Latest version of Chrome Canary:
https://www.google.com/intl/en/chrome/browser/canary.html
SHORTCUTS
Keyboard Shortcuts
 The DevTools has several built-in shortcut keys that developers can use to
save time in their day to day workflow. Outlined below is each shortcut and
the corresponding key for each on Windows/Linux and Mac. While some
shortcuts are globally available across all of the DevTools, others are
specific to a single panel, and are broken up based on where it can be
used.
 https://developer.chrome.com/devtools/docs/shortcuts
 Categories: Opening DevTools, All Panels, Elements Panel, Styles Sidebar,
Sources Panel, Code Editor Shortcuts, Timeline Panel, Profiles Panel,
Console, Screencasting, Emulation, Other Chrome Shortcuts
Useful shortcuts
Windows/Linux Mac
Open / switch from inspect element
mode and browser window
Ctrl + Shift + C Cmd + Shift + C
Text search across all sources Ctrl + Shift + F Cmd + Opt + F
Toggle edit as HTML (Elements) F2 -
Step out of current function
(Sources)
Shift + F11, Ctrl + Shift + ; Shift + F11, Cmd + Shift + ;
Go to member (Sources) Ctrl + Shift + O Cmd + Shift + O
Go to matching bracket (Sources) Ctrl + M -
Clear Console (Console) Ctrl + L Cmd + K, Opt + L
ELEMENTS
Google Chrome DevTools features overview
Select an element in the page to inspect it
 Right-click any element on the page the page and select Inspect Element.
 Press Ctrl + Shift + C (or Cmd + Shift + C on mac) to open DevTools in
Inspect Element mode, then click on an element.
 Click the Inspect Element button Inspect icon at the top of the DevTools
window to go into Inspect Element Mode, then click on an element.
 Use the inspect() method in the console, such as inspect(document.body).
See the Command-Line API for information on using inspect.
Navigate the DOM
 You can navigate through the DOM structure using either mouse or
keyboard.
 To expand a collapsed node , double-click the node or press Right
arrow.
 To collapse an expanded node , double-click the node or press Left
arrow.
 As you navigate, the Elements panel shows a breadcrumb trail in the
bottom bar.
Scroll into view
Set DOM breakpoints
View element event listeners
Trigger pseudo-classes on element
Metrics pane
Even more
 Edit DOM nodes.
 Edit attributes.
 Edit DOM nodes as HTML.
 Move elements.
 Delete elements.
 Edit and create styles through styles pane.
 Edit css animations speed.
NETWORK
Google Chrome DevTools features overview
SOURCES
Google Chrome DevTools features overview
Debugging JavaScript
 As the complexity of JavaScript applications increase, developers need
powerful debugging tools to help quickly discover the cause of an issue and
fix it efficiently. The Chrome DevTools include a number of useful tools to
help make debugging JavaScript less painful.
 https://developer.chrome.com/devtools/docs/javascript-debugging
Debugging with breakpoints
Breakpoint menu
Interact with paused breakpoint
Conditional breakpoint
Asynchronous JavaScript debugging
 To view the execution path including asynchronous JavaScript callbacks
such as timer and XHR events, check the Async checkbox.
 Further information and examples using async call stacks can be found in
Debugging Asynchronous JavaScript with Chrome DevTools on
HTML5Rocks.com.
The Long Resume
 When paused, click and hold the resume button to "Resume with all
pauses blocked for 500 ms". This makes all breakpoints disabled for half a
second, naturally. Use this to get to the next event loop, so you can avoid
hitting breakpoints continually exiting a loop, for example.
Live Editing
 While at a breakpoint, it's also possible to live edit scripts by clicking into
the main editor panel and making local modifications.
Local modifications history
Pretty Print
Even more
 Console drawer.
 Breakpoints in Dynamic JavaScript.
 Pause on Next JavaScript Statement.
 Pause on Exceptions.
 Pause on Uncaught Exceptions.
 Breakpoints on DOM Mutation Events.
 Breakpoints on XHR.
 Breakpoints on JavaScript Event Listeners.
 Source maps.
TIMELINE
Google Chrome DevTools features overview
Google Chrome DevTools features overview
Timeline modes
In addition to the detailed Records view, you can inspect recordings in one of
three modes:
 Events mode shows all recorded events by event category.
 Frames mode shows your page's rendering performance.
 Memory mode shows your page's memory usage over time.
Tips for making recordings
 Keep recordings as short as possible. Shorter recordings generally make
analysis easier.
 Avoid unnecessary actions. Try to avoid actions (mouse clicks, network loads,
and so forth) that are extraneous to the activity you want to record and analyze.
For instance, if you want to record events that occur after you click a “Login”
button, don’t also scroll the page, load an image and so forth.
 Disable the browser cache. When recording network operations, it’s a good
idea to disable the browser’s cache in the DevTools Settings panel.
 Disable extensions. Chrome extensions can add unrelated noise to Timeline
recordings of your application. You can do one of the following:
 Open a Chrome window in incognito mode (Ctrl + Shift + N).
 Create a new Chrome user profile for testing.
PROFILES
Google Chrome DevTools features overview
JavaScript & CSS performance
The Profiles panel lets you profile the execution time and memory usage of a
web app or page. These help you to understand where resources are being
spent, and so help you to optimize your code. The provided profilers are:
 The CPU profiler shows where execution time is spent in your page's
JavaScript functions. Read more
 The Heap profiler shows memory distribution by your page's JavaScript
objects and related DOM nodes. Read more
 The JavaScript profile shows where execution time is spent in your scripts.
RESOURCES
Google Chrome DevTools features overview
Managing application storage
The Resources panel lets you inspect your application's local data sources,
including IndexedDB, Web SQL databases, local and session storage,
cookies, and Application Cache resources. You can also quickly inspect your
application's visual resources, including images, fonts, and stylesheets.
Read more
AUDITS
Google Chrome DevTools features overview
Page audit
 The Audit panel can analyze a page as it loads. Then provides suggestions
and optimizations for decreasing page load time and increase perceived
(and real) responsiveness.
 For further insight, it is recommended to use PageSpeed Insights.
CONSOLE
Google Chrome DevTools features overview
Working with the Console
 The JavaScript Console provides two primary functions for developers
testing web pages and applications. It is a place to:
 Log diagnostic information in the development process.
 A shell prompt which can be used to interact with the document and
DevTools.
 https://developer.chrome.com/devtools/docs/console-api
 https://developer.chrome.com/devtools/docs/commandline-api
console.log(object [, object, ...])
Format Specifier Description
%s Formats the value as a string.
%d or %i Formats the value as an integer.
%f Formats the value as a floating point value.
%o Formats the value as an expandable DOM element (as in
the Elements panel).
%O Formats the value as an expandable JavaScript object.
%c Formats the output string according to CSS styles you
provide.
console.log(object [, object, ...])
console.debug/info/warn/error
console.assert(expression, object)
console.count(label)
console.dir(object)
console.group(object[, object, ...])
console.groupCollapsed(object[, object, ...])
console.groupEnd()
console.time(label)
console.timeEnd(label)
Even more
 debugger;
 console.clear();
 console.dirxml(object);
 console.trace(object)
 console.profile([label]);
 console.profileEnd();
 console.timeStamp([label]);
EXTRAS
Further reading
 Device Mode & Mobile Emulation
 Remote Debugging
 DevTools Videos
 Developing and Debugging extensions
Google Chrome DevTools features overview
Oleksii Prohonnyi
facebook.com/oprohonnyi
linkedin.com/in/oprohonnyi

More Related Content

PDF
Using Chrome Dev Tools
PPTX
Chrome DevTools
PPTX
Web Performance: 3 Stages to Success
PDF
PPTX
Introduction to ASP.NET Core MVC and the MVC Pattern.pptx
PDF
Asp.net mvc basic introduction
PPTX
Callbacks, Promises, and Coroutines (oh my!): Asynchronous Programming Patter...
PPT
Ionic Framework
Using Chrome Dev Tools
Chrome DevTools
Web Performance: 3 Stages to Success
Introduction to ASP.NET Core MVC and the MVC Pattern.pptx
Asp.net mvc basic introduction
Callbacks, Promises, and Coroutines (oh my!): Asynchronous Programming Patter...
Ionic Framework

What's hot (20)

PDF
jQuery for beginners
PPTX
HTML (Web) basics for a beginner
PDF
Basics of JavaScript
PPT
SonarQube Overview
PPTX
Lab #2: Introduction to Javascript
PDF
Documenting your REST API with Swagger - JOIN 2014
PPTX
Introduction to Node js
PDF
WEB DEVELOPMENT USING REACT JS
PDF
Django Introduction & Tutorial
PPT
Java Script ppt
PPTX
Introduction to Web development
PDF
Introduction to HTML5
PPTX
Introduction Node.js
PPT
Javascript
PPTX
Data and time
PDF
JavaScript - Chapter 12 - Document Object Model
PDF
PPT
Introduction to Javascript
PPTX
Introduction to Node.js
jQuery for beginners
HTML (Web) basics for a beginner
Basics of JavaScript
SonarQube Overview
Lab #2: Introduction to Javascript
Documenting your REST API with Swagger - JOIN 2014
Introduction to Node js
WEB DEVELOPMENT USING REACT JS
Django Introduction & Tutorial
Java Script ppt
Introduction to Web development
Introduction to HTML5
Introduction Node.js
Javascript
Data and time
JavaScript - Chapter 12 - Document Object Model
Introduction to Javascript
Introduction to Node.js
Ad

Viewers also liked (20)

PDF
Google Chrome developer tools
PDF
Using chrome developer tools for QA'ing Optimizely
PDF
Predictability for the Web
PPTX
Dive into Angular, part 3: Performance
PPT
Разработка веб-сайта. Сайт. Зачем он?
PPTX
Как создать сайт за 2 часа? (Wordpress)
PPTX
Conference DotJS 2015 Paris review
PPTX
Dive into Angular, part 5: Experience
PPTX
Exploradores.caroes
PPTX
Front-end rich JavaScript application creation (Backbone.js)
PPTX
Cycle.js overview
PPTX
Asm.js introduction
PPTX
Chorme devtools
PPTX
Moment.js overview
PPTX
Utility libraries to make your life easier
PPTX
OpenLayer's basics
PPTX
D3.JS Tips & Tricks (export to svg, crossfilter, maps etc.)
PPTX
Dive into Angular, part 1: Introduction
PPTX
Automated Testing with Google Chrome - WebDriver- ChromeDriver
PDF
Chrome DevTools Awesome 10 Features +1
Google Chrome developer tools
Using chrome developer tools for QA'ing Optimizely
Predictability for the Web
Dive into Angular, part 3: Performance
Разработка веб-сайта. Сайт. Зачем он?
Как создать сайт за 2 часа? (Wordpress)
Conference DotJS 2015 Paris review
Dive into Angular, part 5: Experience
Exploradores.caroes
Front-end rich JavaScript application creation (Backbone.js)
Cycle.js overview
Asm.js introduction
Chorme devtools
Moment.js overview
Utility libraries to make your life easier
OpenLayer's basics
D3.JS Tips & Tricks (export to svg, crossfilter, maps etc.)
Dive into Angular, part 1: Introduction
Automated Testing with Google Chrome - WebDriver- ChromeDriver
Chrome DevTools Awesome 10 Features +1
Ad

Similar to Google Chrome DevTools features overview (20)

PDF
Digging into your DevTools
PDF
Chrome - DevTools_ A Complete Comprehensive Guide.pdf
PPTX
Browser Developer Tools for APEX Developers
PPTX
Kill those bugs with the ultimate tool - Chrome DevTools
PDF
Chrome devtool
PDF
Google Developer Day 2010 Japan: Google Chrome の Developer Tools (ミカイル ナガノフ, ...
PPTX
Marco Liberati - Write once, debug everywhere
PDF
Debug like a doctor
PDF
Run around Chrome Inspector
PDF
A Detailed Guide to Chrome Remote Debugging.pdf
PDF
Getting started with dev tools (atl)
PDF
Getting started with dev tools (4/10/17 DC)
PDF
Devfest South West, Nigeria - Chrome Developer Tools
PDF
Chrome DevTools 101
PDF
Getting started with dev tools (05 09-17, santa monica) upload
PPTX
Performance & dev tools
PDF
Google Chrome DevTools: Rendering & Memory profiling on Open Academy 2013
PDF
Dev tools rendering & memory profiling
PDF
Ustream Techtalks: Google Chrome Developer Tools
PDF
Tool it Up! - Session #2 - NetPanel
Digging into your DevTools
Chrome - DevTools_ A Complete Comprehensive Guide.pdf
Browser Developer Tools for APEX Developers
Kill those bugs with the ultimate tool - Chrome DevTools
Chrome devtool
Google Developer Day 2010 Japan: Google Chrome の Developer Tools (ミカイル ナガノフ, ...
Marco Liberati - Write once, debug everywhere
Debug like a doctor
Run around Chrome Inspector
A Detailed Guide to Chrome Remote Debugging.pdf
Getting started with dev tools (atl)
Getting started with dev tools (4/10/17 DC)
Devfest South West, Nigeria - Chrome Developer Tools
Chrome DevTools 101
Getting started with dev tools (05 09-17, santa monica) upload
Performance & dev tools
Google Chrome DevTools: Rendering & Memory profiling on Open Academy 2013
Dev tools rendering & memory profiling
Ustream Techtalks: Google Chrome Developer Tools
Tool it Up! - Session #2 - NetPanel

More from Oleksii Prohonnyi (14)

PPTX
Dive into Angular, part 4: Angular 2.0
PPTX
Dive into Angular, part 2: Architecture
PPTX
Bower introduction
PPTX
JavaScript Presentation Frameworks and Libraries
PPTX
Introduction to D3.js
PPTX
Code review process with JetBrains UpSource
PPTX
BEM methodology overview
PPTX
Front-end development introduction (JavaScript). Part 2
PPTX
Front-end development introduction (HTML, CSS). Part 1
PPTX
Test-driven development & Behavior-driven development basics
PPTX
JavaScript Coding Guidelines
PPTX
Database Optimization (MySQL)
PPTX
PHPCS (PHP Code Sniffer)
PPTX
Usability of UI Design (motivation, heuristics, tools)
Dive into Angular, part 4: Angular 2.0
Dive into Angular, part 2: Architecture
Bower introduction
JavaScript Presentation Frameworks and Libraries
Introduction to D3.js
Code review process with JetBrains UpSource
BEM methodology overview
Front-end development introduction (JavaScript). Part 2
Front-end development introduction (HTML, CSS). Part 1
Test-driven development & Behavior-driven development basics
JavaScript Coding Guidelines
Database Optimization (MySQL)
PHPCS (PHP Code Sniffer)
Usability of UI Design (motivation, heuristics, tools)

Recently uploaded (20)

PDF
Wondershare Filmora 15 Crack With Activation Key [2025
PPTX
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
PPTX
CHAPTER 2 - PM Management and IT Context
PDF
Odoo Companies in India – Driving Business Transformation.pdf
PDF
medical staffing services at VALiNTRY
PDF
Adobe Premiere Pro 2025 (v24.5.0.057) Crack free
PDF
System and Network Administraation Chapter 3
PDF
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
PPTX
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
PDF
Upgrade and Innovation Strategies for SAP ERP Customers
PDF
Product Update: Alluxio AI 3.7 Now with Sub-Millisecond Latency
PPTX
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
PDF
Nekopoi APK 2025 free lastest update
PPTX
L1 - Introduction to python Backend.pptx
PDF
Digital Strategies for Manufacturing Companies
PDF
Designing Intelligence for the Shop Floor.pdf
PPTX
Introduction to Artificial Intelligence
PDF
T3DD25 TYPO3 Content Blocks - Deep Dive by André Kraus
PDF
Digital Systems & Binary Numbers (comprehensive )
PDF
Why TechBuilder is the Future of Pickup and Delivery App Development (1).pdf
Wondershare Filmora 15 Crack With Activation Key [2025
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
CHAPTER 2 - PM Management and IT Context
Odoo Companies in India – Driving Business Transformation.pdf
medical staffing services at VALiNTRY
Adobe Premiere Pro 2025 (v24.5.0.057) Crack free
System and Network Administraation Chapter 3
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
Upgrade and Innovation Strategies for SAP ERP Customers
Product Update: Alluxio AI 3.7 Now with Sub-Millisecond Latency
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
Nekopoi APK 2025 free lastest update
L1 - Introduction to python Backend.pptx
Digital Strategies for Manufacturing Companies
Designing Intelligence for the Shop Floor.pdf
Introduction to Artificial Intelligence
T3DD25 TYPO3 Content Blocks - Deep Dive by André Kraus
Digital Systems & Binary Numbers (comprehensive )
Why TechBuilder is the Future of Pickup and Delivery App Development (1).pdf

Google Chrome DevTools features overview

  • 4. Chrome Developer Tools  The Chrome Developer Tools (DevTools for short), are a set of web authoring and debugging tools built into Google Chrome. The DevTools provide web developers deep access into the internals of the browser and their web application. Use the DevTools to efficiently track down layout issues, set JavaScript breakpoints, and get insights for code optimization.  Sections: Elements, Resources, Network, Sources, Timeline, Profiles, Audits, Console  https://developer.chrome.com/devtools  Latest version of Chrome Canary: https://www.google.com/intl/en/chrome/browser/canary.html
  • 6. Keyboard Shortcuts  The DevTools has several built-in shortcut keys that developers can use to save time in their day to day workflow. Outlined below is each shortcut and the corresponding key for each on Windows/Linux and Mac. While some shortcuts are globally available across all of the DevTools, others are specific to a single panel, and are broken up based on where it can be used.  https://developer.chrome.com/devtools/docs/shortcuts  Categories: Opening DevTools, All Panels, Elements Panel, Styles Sidebar, Sources Panel, Code Editor Shortcuts, Timeline Panel, Profiles Panel, Console, Screencasting, Emulation, Other Chrome Shortcuts
  • 7. Useful shortcuts Windows/Linux Mac Open / switch from inspect element mode and browser window Ctrl + Shift + C Cmd + Shift + C Text search across all sources Ctrl + Shift + F Cmd + Opt + F Toggle edit as HTML (Elements) F2 - Step out of current function (Sources) Shift + F11, Ctrl + Shift + ; Shift + F11, Cmd + Shift + ; Go to member (Sources) Ctrl + Shift + O Cmd + Shift + O Go to matching bracket (Sources) Ctrl + M - Clear Console (Console) Ctrl + L Cmd + K, Opt + L
  • 10. Select an element in the page to inspect it  Right-click any element on the page the page and select Inspect Element.  Press Ctrl + Shift + C (or Cmd + Shift + C on mac) to open DevTools in Inspect Element mode, then click on an element.  Click the Inspect Element button Inspect icon at the top of the DevTools window to go into Inspect Element Mode, then click on an element.  Use the inspect() method in the console, such as inspect(document.body). See the Command-Line API for information on using inspect.
  • 11. Navigate the DOM  You can navigate through the DOM structure using either mouse or keyboard.  To expand a collapsed node , double-click the node or press Right arrow.  To collapse an expanded node , double-click the node or press Left arrow.  As you navigate, the Elements panel shows a breadcrumb trail in the bottom bar.
  • 14. View element event listeners
  • 17. Even more  Edit DOM nodes.  Edit attributes.  Edit DOM nodes as HTML.  Move elements.  Delete elements.  Edit and create styles through styles pane.  Edit css animations speed.
  • 22. Debugging JavaScript  As the complexity of JavaScript applications increase, developers need powerful debugging tools to help quickly discover the cause of an issue and fix it efficiently. The Chrome DevTools include a number of useful tools to help make debugging JavaScript less painful.  https://developer.chrome.com/devtools/docs/javascript-debugging
  • 25. Interact with paused breakpoint
  • 27. Asynchronous JavaScript debugging  To view the execution path including asynchronous JavaScript callbacks such as timer and XHR events, check the Async checkbox.  Further information and examples using async call stacks can be found in Debugging Asynchronous JavaScript with Chrome DevTools on HTML5Rocks.com.
  • 28. The Long Resume  When paused, click and hold the resume button to "Resume with all pauses blocked for 500 ms". This makes all breakpoints disabled for half a second, naturally. Use this to get to the next event loop, so you can avoid hitting breakpoints continually exiting a loop, for example.
  • 29. Live Editing  While at a breakpoint, it's also possible to live edit scripts by clicking into the main editor panel and making local modifications.
  • 32. Even more  Console drawer.  Breakpoints in Dynamic JavaScript.  Pause on Next JavaScript Statement.  Pause on Exceptions.  Pause on Uncaught Exceptions.  Breakpoints on DOM Mutation Events.  Breakpoints on XHR.  Breakpoints on JavaScript Event Listeners.  Source maps.
  • 36. Timeline modes In addition to the detailed Records view, you can inspect recordings in one of three modes:  Events mode shows all recorded events by event category.  Frames mode shows your page's rendering performance.  Memory mode shows your page's memory usage over time.
  • 37. Tips for making recordings  Keep recordings as short as possible. Shorter recordings generally make analysis easier.  Avoid unnecessary actions. Try to avoid actions (mouse clicks, network loads, and so forth) that are extraneous to the activity you want to record and analyze. For instance, if you want to record events that occur after you click a “Login” button, don’t also scroll the page, load an image and so forth.  Disable the browser cache. When recording network operations, it’s a good idea to disable the browser’s cache in the DevTools Settings panel.  Disable extensions. Chrome extensions can add unrelated noise to Timeline recordings of your application. You can do one of the following:  Open a Chrome window in incognito mode (Ctrl + Shift + N).  Create a new Chrome user profile for testing.
  • 40. JavaScript & CSS performance The Profiles panel lets you profile the execution time and memory usage of a web app or page. These help you to understand where resources are being spent, and so help you to optimize your code. The provided profilers are:  The CPU profiler shows where execution time is spent in your page's JavaScript functions. Read more  The Heap profiler shows memory distribution by your page's JavaScript objects and related DOM nodes. Read more  The JavaScript profile shows where execution time is spent in your scripts.
  • 43. Managing application storage The Resources panel lets you inspect your application's local data sources, including IndexedDB, Web SQL databases, local and session storage, cookies, and Application Cache resources. You can also quickly inspect your application's visual resources, including images, fonts, and stylesheets. Read more
  • 46. Page audit  The Audit panel can analyze a page as it loads. Then provides suggestions and optimizations for decreasing page load time and increase perceived (and real) responsiveness.  For further insight, it is recommended to use PageSpeed Insights.
  • 49. Working with the Console  The JavaScript Console provides two primary functions for developers testing web pages and applications. It is a place to:  Log diagnostic information in the development process.  A shell prompt which can be used to interact with the document and DevTools.  https://developer.chrome.com/devtools/docs/console-api  https://developer.chrome.com/devtools/docs/commandline-api
  • 50. console.log(object [, object, ...]) Format Specifier Description %s Formats the value as a string. %d or %i Formats the value as an integer. %f Formats the value as a floating point value. %o Formats the value as an expandable DOM element (as in the Elements panel). %O Formats the value as an expandable JavaScript object. %c Formats the output string according to CSS styles you provide.
  • 58. Even more  debugger;  console.clear();  console.dirxml(object);  console.trace(object)  console.profile([label]);  console.profileEnd();  console.timeStamp([label]);
  • 60. Further reading  Device Mode & Mobile Emulation  Remote Debugging  DevTools Videos  Developing and Debugging extensions