> ## Documentation Index
> Fetch the complete documentation index at: https://docs.syntblaze.com/llms.txt
> Use this file to discover all available pages before exploring further.

# JavaScript Default Import

A default import is an ECMAScript 6 (ES6) module syntax used to bind a module's single `default` export to a local identifier. Unlike named imports, default imports do not use destructuring syntax (curly braces) and do not require the importing identifier to match the original exported name. This allows the importing module to assign any valid, locally scoped variable name to the imported binding.

## Syntax

```javascript theme={"dark"}
import localIdentifier from 'module-specifier';
```

* **`localIdentifier`**: A developer-defined variable name that will be bound to the default export of the target module.
* **`module-specifier`**: A string literal representing the path or URI to the module containing the default export.

## Mechanics

A default import strictly relies on the presence of an `export default` statement within the source module. Because the ES6 module specification restricts a module to exactly one default export, the JavaScript engine automatically resolves the default import to that specific export, regardless of the `localIdentifier` provided.

### Source Module (`source.js`)

```javascript theme={"dark"}
const internalValue = 42;

// The module exposes a single default export
export default internalValue;
```

### Importing Module (`target.js`)

```javascript theme={"dark"}
// The default export is bound to an arbitrary local identifier
import myCustomName from './source.js';

console.log(myCustomName); // 42
```

## Syntactic Variations

Default imports can be combined with named imports or namespace imports within a single declaration. When combining them, the default import must always precede the named or namespace imports.

**Combined with Named Imports:**

```javascript theme={"dark"}
import defaultIdentifier, { namedIdentifier1, namedIdentifier2 } from 'module-specifier';
```

**Combined with a Namespace Import:**

```javascript theme={"dark"}
import defaultIdentifier, * as namespaceIdentifier from 'module-specifier';
```

## Under the Hood

In the ES6 module record, a default export is technically a named export where the exported name is literally the string `"default"`. Therefore, a default import is syntactic sugar for renaming the `"default"` export.

The following two statements are functionally identical:

```javascript theme={"dark"}
// Standard default import syntax
import myIdentifier from './module.js';

// Equivalent named import syntax using aliasing
import { default as myIdentifier } from './module.js';
```

<div
  style={{ 
display: "flex", 
justifyContent: "space-between", 
alignItems: "center", 
maxWidth: "754px", 
padding: "1rem 0",
marginBottom: "24px"
}}
>
  <span style={{ fontWeight: "bold", fontSize: "1.25rem", color: "var(--tw-prose-headings)", fontFamily: "Inter, ui-sans-serif, system-ui, sans-serif" }}>Tired of Poor JavaScript Skills? Fix That With Deep Grasping!</span>

  <a
    href="https://syntblaze.com"
    target="_blank"
    style={{ 
  marginLeft: "24px",
  textDecoration: "none", 
  backgroundColor: "#007AFF",
  color: "#ffffff", 
  padding: "6px 16px", 
  borderRadius: "16px",
  fontSize: "0.9rem",
  fontWeight: "600",
  textAlign: "center",
  transition: "background-color 0.2s ease"
}}
  >
    Learn More
  </a>
</div>

<div style={{ display: "flex", gap: "12px", flexWrap: "wrap" }}>
  <img src="https://mintcdn.com/syntblazellc/-L0ums_2lctDSZ1l/images/skill-tracking.png?fit=max&auto=format&n=-L0ums_2lctDSZ1l&q=85&s=b9b0305c93bb501c9e767b5c76c88835" style={{ width: "30%", minWidth: 60 }} width="621" height="1344" data-path="images/skill-tracking.png" />

  <img src="https://mintcdn.com/syntblazellc/23tyuOzaWS88qFlc/images/nuggets.png?fit=max&auto=format&n=23tyuOzaWS88qFlc&q=85&s=c86c80197299762989e9b882419b2109" style={{ width: "30%", minWidth: 60 }} width="621" height="1344" data-path="images/nuggets.png" />

  <img src="https://mintcdn.com/syntblazellc/-L0ums_2lctDSZ1l/images/bite-sized-exercises.png?fit=max&auto=format&n=-L0ums_2lctDSZ1l&q=85&s=a65f9a38c37ff28ab73ed783c53c60e3" style={{ width: "30%", minWidth: 60 }} width="621" height="1344" data-path="images/bite-sized-exercises.png" />
</div>

<div style={{ display: "flex", gap: "12px", flexWrap: "wrap", marginTop: "12px" }}>
  <img src="https://mintcdn.com/syntblazellc/-L0ums_2lctDSZ1l/images/mastery-chain.png?fit=max&auto=format&n=-L0ums_2lctDSZ1l&q=85&s=748a1763454713e679260fbb95f154a2" style={{ width: "30%", minWidth: 60 }} width="621" height="1344" data-path="images/mastery-chain.png" />

  <img src="https://mintcdn.com/syntblazellc/-L0ums_2lctDSZ1l/images/element-previews.png?fit=max&auto=format&n=-L0ums_2lctDSZ1l&q=85&s=242f61448ff5dd6deaaab2dccc13b507" style={{ width: "30%", minWidth: 60 }} width="621" height="1344" data-path="images/element-previews.png" />

  <img src="https://mintcdn.com/syntblazellc/-L0ums_2lctDSZ1l/images/element-explanations.png?fit=max&auto=format&n=-L0ums_2lctDSZ1l&q=85&s=cf0fc1c31f9cd0fc26716781be05fbc9" style={{ width: "30%", minWidth: 60 }} width="621" height="1344" data-path="images/element-explanations.png" />
</div>
