Function argument names should be unique

This page is not yet available in Spanish. We are working on its translation.
If you have any questions or feedback about our current translation project, feel free to reach out to us!

Metadata

ID: typescript-common-security/unique-function-arguments

Language: TypeScript

Severity: Warning

Category: Error Prone

Description

A function’s parameter names should all be unique. Otherwise, a latter parameter will overwrite the former parameter. This behavior can lead to unintended bugs and it difficult to debug in the future.

Non-Compliant Code Examples

function addition(foo: number, bar: number, foo: number) {
  console.log(foo + bar + foo);
}

addition(1, 2, 3); // outputs 8

Compliant Code Examples

function addition(foo: number, bar: number, baz: number) {
  console.log(foo + bar + baz);
}

export function useEditorStateTransform<Input, Output>(
    input: Input,
    transformByState: StateFunctions<Input, Output>,
    defaultValue: Input | null = input,
): Input | Output | null {
}

addition(1, 2, 3); // outputs 6
https://static.datadoghq.com/static/images/logos/github_avatar.svg https://static.datadoghq.com/static/images/logos/vscode_avatar.svg jetbrains

Seamless integrations. Try Datadog Code Analysis