Code Quality detectors

New function detected

Use of new Function() can be dangerous if used to evaluate dynamic content.

Invoke super appropriately

The incorrect use of super() causes problems.

Lazy Load Module

Checks for lazy module loading.

Use {} instead of new Object()

New Object() has been used for object creation instead of {}.

Numeric truncation error

Truncation errors occur when a primitive is cast to a primitive of a smaller size and data is lost in the conversion.

Items removed from an array using delete

Items removed from an array using delete can cause undefined holes in the array.

Avoid Undefined As Variable Name

Checks if the undefined is used as variable.

Alert Box JS Rule

Checks for the use of browser pop-ups (alert, confirm, prompt).

Redundant switch statement

Detect switch statements if it has less than three case clauses.

Index of method comparison

indexOf method should not be compared with values greater than zero.

Check failed records when using kinesis

A batch request that doesn't check for failed records can lead to loss of data.

Catch and swallow exception

Swallowing exceptions, without rethrowing or logging them, can make it hard to understand why your application is failing.

String passed to setInterval or setTimeout

String passed to setInterval or setTimeout can cause the JavaScript engine to evaluate, which can lead to a security risk.

Improper Initialization

The product does not initialize or incorrectly initializes a resource, which might leave the resource in an unexpected state when it is accessed or used.

Missing check on method output

Missing checks might cause silent failures that are harder to debug.

Avoid nan in comparison

Checks if nan is used is comparison.

Inefficient polling of AWS resource

Custom polling can be inefficient and prone to error. Consider using AWS waiters instead.