javascript-analyzer icon indicating copy to clipboard operation
javascript-analyzer copied to clipboard

Incorrect Analysis: JavaScript analyzer makes little sense when a object literal is used

Open joshgoebel opened this issue 3 years ago • 3 comments

Describe the incorrectness

I don't think the analyzers advice makes any sense here:

Using a helper method is good practice, because it replaces a cryptic "member call" with a named call that can be documented individually.

The advice assumes a student is using an array - in which case there is complexity to hide and I agree a function as a named abstraction is useful, but in this case a well-named lookup table is serving the same purpose as a function, so the advice makes little sense.

Which exercise

Resistor Duo

Source file(s)

export const decodedValue = (colors) => {
  const resistorBands = {
    black: 0,
    brown: 1,
    // ...
    grey: 8,
    white: 9
  }
  return resistorBands[colors[0]]*10 + resistorBands[colors[1]];
  
};

Expected analysis

None. (well at least not on this point)

  • You could recommend destructuring of the arguments of course - which I would as a mentor.
  • Hoisting the constant to a global.

Additional context

None.

joshgoebel avatar Oct 07 '21 23:10 joshgoebel