Avoid unnecessary else blocks in Typescript
Avoid unnecessary `else` blocks when the `if` block ends with a return statement, break, continue, or similar control flow statements.
Bad:
```typescript
function processValue(value: number): string {
if (value > 10) {
return "high"
} else {
Install this rule for wispbit
Add this rule to wispbit and it will run when you open a pull request
Install this rule for Coderabbit
Copy the configuration below and add it to your repository as .coderabbit.yml
in your project root.
reviews:
path_instructions:
- path: "*.ts"
instructions: |
Avoid unnecessary `else` blocks when the `if` block ends with a return statement, break, continue, or similar control flow statements.
Bad:
```typescript
function processValue(value: number): string {
if (value > 10) {
return "high"
} else {
return "low"
}
}
```
```typescript
function checkItems(items: string[]): void {
for (const item of items) {
if (item.length > 5) {
console.log("Long item:", item)
continue
} else {
console.log("Short item:", item)
}
}
}
```
Good:
```typescript
function processValue(value: number): string {
if (value > 10) {
return "high"
}
return "low"
}
```
```typescript
function checkItems(items: string[]): void {
for (const item of items) {
if (item.length > 5) {
console.log("Long item:", item)
continue
}
console.log("Short item:", item)
}
}
```
Install this rule for Greptile
Greptile rules can be added through the web interface. Please see this documentation for details on how to add custom rules and context.
Avoid unnecessary `else` blocks when the `if` block ends with a return statement, break, continue, or similar control flow statements.
Bad:
```typescript
function processValue(value: number): string {
if (value > 10) {
return "high"
} else {
return "low"
}
}
```
```typescript
function checkItems(items: string[]): void {
for (const item of items) {
if (item.length > 5) {
console.log("Long item:", item)
continue
} else {
console.log("Short item:", item)
}
}
}
```
Good:
```typescript
function processValue(value: number): string {
if (value > 10) {
return "high"
}
return "low"
}
```
```typescript
function checkItems(items: string[]): void {
for (const item of items) {
if (item.length > 5) {
console.log("Long item:", item)
continue
}
console.log("Short item:", item)
}
}
```
File Path Patterns:
Install this rule for GitHub Copilot
Copilot instructions can be added through the interface. See the documentation for details on how to create coding guidelines.
Avoid unnecessary `else` blocks when the `if` block ends with a return statement, break, continue, or similar control flow statements.
Bad:
```typescript
function processValue(value: number): string {
if (value > 10) {
return "high"
} else {
return "low"
}
}
```
```typescript
function checkItems(items: string[]): void {
for (const item of items) {
if (item.length > 5) {
console.log("Long item:", item)
continue
} else {
console.log("Short item:", item)
}
}
}
```
Good:
```typescript
function processValue(value: number): string {
if (value > 10) {
return "high"
}
return "low"
}
```
```typescript
function checkItems(items: string[]): void {
for (const item of items) {
if (item.length > 5) {
console.log("Long item:", item)
continue
}
console.log("Short item:", item)
}
}
```
File Path Patterns:
Install this rule for Graphite Diamond
Diamond custom rules can be added through the interface. See the documentation for details on how to create custom rules.
Avoid unnecessary `else` blocks when the `if` block ends with a return statement, break, continue, or similar control flow statements.
Bad:
```typescript
function processValue(value: number): string {
if (value > 10) {
return "high"
} else {
return "low"
}
}
```
```typescript
function checkItems(items: string[]): void {
for (const item of items) {
if (item.length > 5) {
console.log("Long item:", item)
continue
} else {
console.log("Short item:", item)
}
}
}
```
Good:
```typescript
function processValue(value: number): string {
if (value > 10) {
return "high"
}
return "low"
}
```
```typescript
function checkItems(items: string[]): void {
for (const item of items) {
if (item.length > 5) {
console.log("Long item:", item)
continue
}
console.log("Short item:", item)
}
}
```
File Path Patterns:
Use with Cline
Copy the rule below and ask Cline to review your code using this rule
Avoid unnecessary `else` blocks when the `if` block ends with a return statement, break, continue, or similar control flow statements.
Bad:
```typescript
function processValue(value: number): string {
if (value > 10) {
return "high"
} else {
return "low"
}
}
```
```typescript
function checkItems(items: string[]): void {
for (const item of items) {
if (item.length > 5) {
console.log("Long item:", item)
continue
} else {
console.log("Short item:", item)
}
}
}
```
Good:
```typescript
function processValue(value: number): string {
if (value > 10) {
return "high"
}
return "low"
}
```
```typescript
function checkItems(items: string[]): void {
for (const item of items) {
if (item.length > 5) {
console.log("Long item:", item)
continue
}
console.log("Short item:", item)
}
}
```
Use with OpenAI Codex
Copy the rule below and ask OpenAI Codex to review your code using this rule
Avoid unnecessary `else` blocks when the `if` block ends with a return statement, break, continue, or similar control flow statements.
Bad:
```typescript
function processValue(value: number): string {
if (value > 10) {
return "high"
} else {
return "low"
}
}
```
```typescript
function checkItems(items: string[]): void {
for (const item of items) {
if (item.length > 5) {
console.log("Long item:", item)
continue
} else {
console.log("Short item:", item)
}
}
}
```
Good:
```typescript
function processValue(value: number): string {
if (value > 10) {
return "high"
}
return "low"
}
```
```typescript
function checkItems(items: string[]): void {
for (const item of items) {
if (item.length > 5) {
console.log("Long item:", item)
continue
}
console.log("Short item:", item)
}
}
```
Use with Cursor
Copy the rule below and ask Cursor to review your code using this rule
Avoid unnecessary `else` blocks when the `if` block ends with a return statement, break, continue, or similar control flow statements.
Bad:
```typescript
function processValue(value: number): string {
if (value > 10) {
return "high"
} else {
return "low"
}
}
```
```typescript
function checkItems(items: string[]): void {
for (const item of items) {
if (item.length > 5) {
console.log("Long item:", item)
continue
} else {
console.log("Short item:", item)
}
}
}
```
Good:
```typescript
function processValue(value: number): string {
if (value > 10) {
return "high"
}
return "low"
}
```
```typescript
function checkItems(items: string[]): void {
for (const item of items) {
if (item.length > 5) {
console.log("Long item:", item)
continue
}
console.log("Short item:", item)
}
}
```
Use with Claude Code
Copy the rule below and ask Claude Code to review your code using this rule
Avoid unnecessary `else` blocks when the `if` block ends with a return statement, break, continue, or similar control flow statements.
Bad:
```typescript
function processValue(value: number): string {
if (value > 10) {
return "high"
} else {
return "low"
}
}
```
```typescript
function checkItems(items: string[]): void {
for (const item of items) {
if (item.length > 5) {
console.log("Long item:", item)
continue
} else {
console.log("Short item:", item)
}
}
}
```
Good:
```typescript
function processValue(value: number): string {
if (value > 10) {
return "high"
}
return "low"
}
```
```typescript
function checkItems(items: string[]): void {
for (const item of items) {
if (item.length > 5) {
console.log("Long item:", item)
continue
}
console.log("Short item:", item)
}
}
```
Install this rule for Windsurf
To set up rules for Windsurf Reviews, please see this documentation
Avoid unnecessary `else` blocks when the `if` block ends with a return statement, break, continue, or similar control flow statements.
Bad:
```typescript
function processValue(value: number): string {
if (value > 10) {
return "high"
} else {
return "low"
}
}
```
```typescript
function checkItems(items: string[]): void {
for (const item of items) {
if (item.length > 5) {
console.log("Long item:", item)
continue
} else {
console.log("Short item:", item)
}
}
}
```
Good:
```typescript
function processValue(value: number): string {
if (value > 10) {
return "high"
}
return "low"
}
```
```typescript
function checkItems(items: string[]): void {
for (const item of items) {
if (item.length > 5) {
console.log("Long item:", item)
continue
}
console.log("Short item:", item)
}
}
```