
Inline adoc files when they are included exactly once. Also fix language tags because this inlining gives us better information on what language the code is written in.
56 lines
1.2 KiB
Plaintext
56 lines
1.2 KiB
Plaintext
== Why is this an issue?
|
|
|
|
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)
|
|
|
|
=== Message
|
|
|
|
Either remove this useless object instantiation of "XXXX" or use it
|
|
|
|
|
|
'''
|
|
== Comments And Links
|
|
(visible only on this page)
|
|
|
|
=== on 27 May 2015, 11:57:01 Ann Campbell wrote:
|
|
Looks good [~freddy.mallet]. I forgot that moving this to a sub-task wouldn't clear out the extra fields. Thanks for taking care of that.
|
|
|
|
include::../comments-and-links.adoc[]
|
|
|
|
endif::env-github,rspecator-view[]
|