DEV Community

Discussion on: Remove all console.log() from your project in less than a minute

Collapse
 
ayc0 profile image
Ayc0

That's cool!
But this has a few issues:

  • it won't work with multi line console.log,
  • it won't work if you have something else in the same line after the console,
  • it won't work with if you do something like const fn = console.log (I mean it will remove the console, but the expression will become wrong).

I'd recommend instead using AST based tools like a webpack plugin, or a eslint custom rule, to detect a CallExpression with the callee being a MemberExpression with the object being console and the property log.

Collapse
 
suhailkakar profile image
Suhail Kakar

Thanks @ayc0
For multiline you need to use console\.log\(([^)]+)\);

Collapse
 
rishabh_sharma_ profile image
Rishabh Sharma

this is helpful

Collapse
 
mdadil09 profile image
Md Adil

it only selected the console.log which are commented not uncommented ones

Collapse
 
ayc0 profile image
Ayc0

It still won't work for code snippet like those:

console.log(
  'hello',
   world(1)
)
Enter fullscreen mode Exit fullscreen mode

(As it contains a closing parenthesis)

Thread Thread
 
wimdenherder profile image
wimdenherder • Edited

console\.log\((.|\n)*?\);?

It matches anything until it encounters ) again, with an optional whitespace and ;