noUnassignedVariables
此内容尚不支持你的语言。
Summary
Section titled “Summary”- Rule available since:
v2.1.0
- Diagnostic Category:
lint/suspicious/noUnassignedVariables
- This rule doesn’t have a fix.
- The default severity of this rule is information.
- Sources:
- Same as
no-unassigned-vars
- Same as
How to configure
Section titled “How to configure”{ "linter": { "rules": { "suspicious": { "noUnassignedVariables": "error" } } }}
Description
Section titled “Description”Disallow let
or var
variables that are read but never assigned.
This rule flags let or var declarations that are never assigned a value but are still read or used in the code. Since these variables will always be undefined, their usage is likely a programming mistake.
Examples
Section titled “Examples”Invalid
Section titled “Invalid”let status;if (status === 'ready') { console.log('Status is ready');}<pre class="language-text"><code class="language-text">code-block.js:1:5 <a href="https://biomejs.dev/linter/rules/no-unassigned-variables">lint/suspicious/noUnassignedVariables</a> ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━<br /><br /> <strong><span style="color: lightgreen;">ℹ</span></strong> <span style="color: lightgreen;">The variable '</span><span style="color: lightgreen;"><strong>status</strong></span><span style="color: lightgreen;">' is declared but never assigned a value.</span><br /> <br /> <strong><span style="color: Tomato;">></span></strong> <strong>1 │ </strong>let status;<br /> <strong> │ </strong> <strong><span style="color: Tomato;">^</span></strong><strong><span style="color: Tomato;">^</span></strong><strong><span style="color: Tomato;">^</span></strong><strong><span style="color: Tomato;">^</span></strong><strong><span style="color: Tomato;">^</span></strong><strong><span style="color: Tomato;">^</span></strong><br /> <strong>2 │ </strong>if (status === 'ready') {<br /> <strong>3 │ </strong> console.log('Status is ready');<br /> <br /> <strong><span style="color: lightgreen;">ℹ</span></strong> <span style="color: lightgreen;">Variable declared without assignment. Either assign a value or remove the declaration.</span><br /> <br /></code></pre>
let value: number | undefined;console.log(value);<pre class="language-text"><code class="language-text">code-block.ts:1:5 <a href="https://biomejs.dev/linter/rules/no-unassigned-variables">lint/suspicious/noUnassignedVariables</a> ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━<br /><br /> <strong><span style="color: lightgreen;">ℹ</span></strong> <span style="color: lightgreen;">The variable '</span><span style="color: lightgreen;"><strong>value</strong></span><span style="color: lightgreen;">' is declared but never assigned a value.</span><br /> <br /> <strong><span style="color: Tomato;">></span></strong> <strong>1 │ </strong>let value: number | undefined;<br /> <strong> │ </strong> <strong><span style="color: Tomato;">^</span></strong><strong><span style="color: Tomato;">^</span></strong><strong><span style="color: Tomato;">^</span></strong><strong><span style="color: Tomato;">^</span></strong><strong><span style="color: Tomato;">^</span></strong><strong><span style="color: Tomato;">^</span></strong><strong><span style="color: Tomato;">^</span></strong><strong><span style="color: Tomato;">^</span></strong><strong><span style="color: Tomato;">^</span></strong><strong><span style="color: Tomato;">^</span></strong><strong><span style="color: Tomato;">^</span></strong><strong><span style="color: Tomato;">^</span></strong><strong><span style="color: Tomato;">^</span></strong><strong><span style="color: Tomato;">^</span></strong><strong><span style="color: Tomato;">^</span></strong><strong><span style="color: Tomato;">^</span></strong><strong><span style="color: Tomato;">^</span></strong><strong><span style="color: Tomato;">^</span></strong><strong><span style="color: Tomato;">^</span></strong><strong><span style="color: Tomato;">^</span></strong><strong><span style="color: Tomato;">^</span></strong><strong><span style="color: Tomato;">^</span></strong><strong><span style="color: Tomato;">^</span></strong><strong><span style="color: Tomato;">^</span></strong><strong><span style="color: Tomato;">^</span></strong><br /> <strong>2 │ </strong>console.log(value);<br /> <strong>3 │ </strong><br /> <br /> <strong><span style="color: lightgreen;">ℹ</span></strong> <span style="color: lightgreen;">Variable declared without assignment. Either assign a value or remove the declaration.</span><br /> <br /></code></pre>
let message = "hello";console.log(message);
let user;user = getUser();console.log(user.name);
let count;count = 0;count++;
declare let value: number | undefined;console.log(value);
declare module "my-module" { let value: string; export = value;}
Related links
Section titled “Related links”Copyright (c) 2023-present Biome Developers and Contributors.