Home JavaScript Screen Properties isExtended JavaScript Screen isExtended Property Definition Screen.isExtended is a read-only boolean that returns true if the device has multiple screens , and false if not (MDN). Access it as window.screen.isExtended.
Read the notes below before you rely on this property. Prefer feature detection when support is limited.
Syntax Use screen.isExtended. Start with this line.
Call What it does window.screen.isExtendedPrimary signature.
Built into the browser. Read screen.isExtended on window.screen — no import required.
Library declarations Parameters Parameter Description isExtended Required. Read-only boolean — multi-screen?
Return Value Return Value Description * The current value of screen.isExtended.
JavaScript Examples 1. Feature detect 2. MDN branch 3. Safe helper Example 1 — Feature-Detect Then Read Check that isExtended exists before reading the boolean.
if ("isExtended" in window.screen) {
console.log(window.screen.isExtended);
console.log(typeof screen.isExtended);
} else {
console.log("isExtended not supported");
} How It Works Detect first. "isExtended" in window.screen avoids assuming Chromium-only support.Read the boolean. When present, the value is true or false.Confirm the type. typeof screen.isExtended is "boolean".Fallback message. Unsupported engines log that the API is missing.Example 2 — MDN Multi- vs Single-Screen Branch Choose a layout path — same idea as MDN’s teaching example.
if (!("isExtended" in window.screen)) {
console.log("Create single-screen window layout (API missing)");
} else if (window.screen.isExtended) {
console.log("Create multi-screen window layout");
} else {
console.log("Create single-screen window layout");
} Create single-screen window layout How It Works Guard missing APIs. No property → single-screen path.Truthy branch. isExtended === true → multi-screen options are worth considering.Falsy branch. One display (or policy forced false) → single-screen UI.MDN intent. Test before building multi-window / multi-screen layouts.Example 3 — Safe Helper with Secure Context Combine detection, secure context, and a default of “not extended”.
function hasExtendedScreen() {
if (!window.isSecureContext) return false;
if (!("isExtended" in window.screen)) return false;
return window.screen.isExtended === true;
}
console.log({
isSecureContext: isSecureContext,
hasExtendedScreen: hasExtendedScreen()
}); {
"isSecureContext": true,
"hasExtendedScreen": false
} How It Works Secure context first. MDN: supporting browsers expose this only on HTTPS / localhost.Detect the property. Missing API → treat as not extended.Strict true check. Only === true enables multi-screen paths.Safe default. Anything uncertain returns false — good for progressive enhancement.Compatibility
Browser Support Screen.isExtended is Experimental and not Baseline . Chromium browsers (Chrome / Edge / Opera ~100+) support it; Firefox and Safari do not.
✓ Experimental · Limited
Screen.isExtended Multi-monitor boolean from the Window Management API — secure context required where supported.
Google Chrome All versions · Desktop & Mobile
Full support
Mozilla Firefox All versions · Desktop & Mobile
Full support
Apple Safari All versions · macOS & iOS
Full support
Microsoft Edge All versions · Chromium & Legacy
Full support
Internet Explorer IE 6+ · Legacy environments
Full support
Opera All modern versions
Full support isExtended Limited
Bottom line: Ship only with feature detection and a single-screen fallback. Do not require isExtended for core UX.
Frequently Asked Questions What does screen.isExtended return? A read-only boolean: true if the device has multiple screens, false if not. Access it as window.screen.isExtended when the API exists.
Is isExtended deprecated or experimental? MDN marks Screen.isExtended as Experimental and Limited availability (not Baseline). It is not Deprecated or Non-standard.
Does isExtended need HTTPS? Yes in supporting browsers: MDN lists it as available only in secure contexts (HTTPS or localhost).
Why might isExtended always be false? MDN: if a Permissions-Policy blocks the Window Management API (window-management), isExtended always returns false—even on multi-monitor setups.
Is isExtended writable? No. It is read-only. You read the boolean; you do not assign to it.
What if the property is missing? Feature-detect with "isExtended" in window.screen. Fall back to a single-screen layout when unsupported (Firefox and Safari currently lack it).
About the author Developer, cloud engineer, and technical writer
I write practical tutorials so students and working developers can learn by doing—from databases and APIs to deployment on AWS.
11 people found this page helpful
Helpful Share Copy link Suggestion