What's the difference between linting and compiling?
Asked Answered
C

2

7

I know that in Java there is a compiler that tells you when you're writing some wrong code. But Javascript doesn't work that ways, cause it doesn't have a compiler. However, is "linting" javascripts way to compile code?

Cerf answered 3/10, 2016 at 12:12 Comment(1)
„But Javascript doesn't work that ways, cause it doesn't have a compiler.” See this en.wikipedia.org/wiki/JavaScript_engineEditor
B
21

Linting is parsing code to verify that the syntax and format are good and follow good practice. A linter will tell you if your indentation is incorrect or if you should be adding spaces around your = operators. A linter could also warn you if your code contains commonly known security flaws or code smells.

Compiling is parsing code to verify that the syntax is correct and convert the code to a different language (generally a faster one).

So what's the difference?

Compiling:

  • syntax validation
  • code converted to different language

Linting:

  • syntax validation
  • style and formatting analysis
  • (optional) code smell/bad code detection
  • (optional) security/performance analysis
Brook answered 3/10, 2016 at 12:16 Comment(2)
so in other words, compiling = linting + converting the code?Cerf
Not exactly, I'll update my answer to explain the differenceBrook
E
3

Linting is the process of running a program that will analyse code for any errors.

JavaScript Lint holds an advantage over competing lints because it is based on the JavaScript engine for the Firefox browser. This provides a robust framework that can not only check JavaScript syntax but also examine the coding techniques used in the script and warn against questionable practices.

For more information on javascript lint visit http://www.javascriptlint.com/

whereas compiling will run through a code a and will convert it into machine language

Ecumenicity answered 3/10, 2016 at 12:18 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.