47 lines
983 B
Plaintext
47 lines
983 B
Plaintext
There is no good reason to create a new object to not do anything with it. Most of the time, this is due to a missing piece of code and so could lead to an unexpected behavior in production.
|
|
|
|
|
|
If it was done on purpose because the constructor has side-effects, then that side-effect code should be moved into a separate method and called directly.
|
|
|
|
== Noncompliant Code Example
|
|
|
|
[source,javascript]
|
|
----
|
|
new MyConstructor(); // Non-Compliant
|
|
----
|
|
|
|
== Compliant Solution
|
|
|
|
[source,javascript]
|
|
----
|
|
var something = new MyConstructor(); // Compliant
|
|
----
|
|
|
|
== Exceptions
|
|
|
|
Immediately dropped new objects inside ``++try++``-statements are ignored.
|
|
|
|
[source,javascript]
|
|
----
|
|
try {
|
|
new MyConstructor();
|
|
} catch (e) {
|
|
/* ... */
|
|
}
|
|
----
|
|
|
|
ifdef::env-github,rspecator-view[]
|
|
|
|
'''
|
|
== Implementation Specification
|
|
(visible only on this page)
|
|
|
|
include::message.adoc[]
|
|
|
|
'''
|
|
== Comments And Links
|
|
(visible only on this page)
|
|
|
|
include::comments-and-links.adoc[]
|
|
endif::env-github,rspecator-view[]
|