Sometimes, we may run into the ‘SyntaxError: Unexpected "#" used outside of class body’ when we’re developing JavaScript apps.
In this article, we’ll look at how to fix the ‘SyntaxError: Unexpected "#" used outside of class body’ when we’re developing JavaScript apps.
Fix the ‘SyntaxError: Unexpected "#" used outside of class body’ When Developing JavaScript Apps
To fix the ‘SyntaxError: Unexpected "#" used outside of class body’ when we’re developing JavaScript apps, we should make sure that we only use the # in places where they’re valid.
For instance, instead of writing code like:
document.querySelector(#foo)
where the # sign isn’t expected to be in front of a variable name, we should write:
document.querySelector("#foo")
where the # sign is in a string.
# is valid inside a string so the error won’t be thrown.
Also, if we’re using the # sign to declare a class with a private field, we should make sure we only access the private field where it is available.
For instance, instead of writing:
class ClassWithPrivateField {
#privateField
constructor() {
}
}
this.#privateField = 2
where we’re trying to access privateField outside a class, which triggers the error, we should instead write:
class ClassWithPrivateField {
#privateField
constructor() {
this.#privateField = 2
}
}
Conclusion
To fix the ‘SyntaxError: Unexpected "#" used outside of class body’ when we’re developing JavaScript apps, we should make sure that we only use the # in places where they’re valid.