Skip to content

LGTM.com - false positive: JS type of console.log variable incorrectly detected #2666

Open
@ljharb

Description

@ljharb

Description of the false positive

The variable is defined with var originalLog = console.log;. typeof console.log is function or object (an exotic implementation object that is callable) depending on the browser.

The warning says it has type "boolean, date, number, object, regular expression or string" - there's a few problems with this:

  1. Dates and RegExps are not a type in JS (and if they are, Arrays, Maps, Sets, Promises, etc are too)
  2. this is also missing symbol and bigint
  3. Given the possible exotic type of console.log as object - a callable object - this is not actually a valid warning.

URL to the alert on the project page on LGTM.com

https://lgtm.com/projects/g/substack/testling/snapshot/8d454f8d81bb0e84b06879a4506e530b8bdc87ac/files/browser/prelude.js?sort=name&dir=ASC&mode=heatmap#x1b735cba61dcb9a1:1

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions