Q1: What would happen when compiling the code below?

An error will be thrown. Nothing will be displayed.
Documents compiles. Neat Stuff! will display.
Documents compile but nothing will be displayed.

Q2: What are a few ways to improve Javascript code quality?

Be aware of case sensitivity, use camelCase, whitespaces, remove all indentation, provide plenty of comments.
Be aware of case sensitivity, use camelCase, compact code, end statements with semicolon, provide plenty of comments.
Be aware of case sensitivity, use camelCase, whitespaces, end statements with semicolon, provide plenty of comments.

Q3: What is the sum of the code below?

Nothing will be assigned to Sum. Error will be thrown
Sum will be assigned as a string with value "42Only you~~~". a will be converted to a string and concatenated with b.
Sum will be assigned 1219. All of b will be converted to ASCII numbers and added accordingly.

Q4: What is wrong with the code below?

Nothing is wrong. Sum will be assigned as a string with value "42Only you~~~".
Variables used in the immediately invoked functional expression are declared after!
By listing the arguments of the function twice (a, b), the compiler won't know where to apply the variables.

Q5: How would you fix question 4?

Place variable declaration for a and b before variable declaration for sum.
Rename arguments at the beginning to c and d. (var sum = (function(c, d)...)
By doing nothing. The code is not wrong.