Introduction
console.log() is a debugging tool that can assist you to figure out what your code is doing. You may follow along as your c...
For further actions, you may consider blocking this person and/or reporting abuse
Won't this only work if the
console
command is the only thing until the end of the line? If you have anything else on the same line after it it will delete that as well. So if your line has multipleconsole
commands in a ternary shortcut (? :, I get that this is not readability friendly, but since it's just debug anyway it's still common) or any other regular commands then you'll have a problem.That's cool!
But this has a few issues:
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 aMemberExpression
with the object beingconsole
and the propertylog
.Thanks @ayc0
For multiline you need to use
console\.log\(([^)]+)\);
It still won't work for code snippet like those:
(As it contains a closing parenthesis)
console\.log\((.|\n)*?\);?
It matches anything until it encounters ) again, with an optional whitespace and ;
it only selected the console.log which are commented not uncommented ones
It's funny how console.log.*$ can read like an wildcard *, but it's not. This regular expression matches also:
function console2log() {
return "A super important function in the script";
}
That's because the dot (.) in regex matches anything. The * means that it can occur 0 or more times.
PS: visual code treats the regex case insensitive
This matches also multi lines:
console\.log\((.|\n)*?\);?
PS: if you have ) in your message this one won't work
console.log("check function() {}")
Nice tip!
Thank you Deyvison, Glad you liked it : )
great
Thanks Jahid :D
Doesn't work for multi-line console logs
This is a beautiful illustration of the βnow you have two problemsβ principle of regex.