JavaScript Review

Question 1

There are two functions being called in the code sample below. Which one returns a value? How can you tell?

var grade = calculateLetterGrade(96);
submitFinalGrade(grade);
"var grade = calculateLetterGrade(96);" is the function that is returning a value because its result is assigned to a variable grade.
Question 2

Explain the difference between a local variable and a global variable.

Local variables are declared inside of the body of a function and global variables are declared outside of any code block.
Question 3

Which variables in the code sample below are local, and which ones are global?

var stateTaxRate = 0.06;
var federalTaxRate = 0.11;

function calculateTaxes(wages){
	var totalStateTaxes = wages * stateTaxRate;
	var totalFederalTaxes = wages * federalTaxRate;
	var totalTaxes = totalStateTaxes + totalFederalTaxes;
	return totalTaxes;
}
'calculateTaxes' is a local variable, 'stateTaxRate' and 'federalTaxRate' are global variables.
Question 4

What is the problem with this code (hint: this program will crash, explain why):

function addTwoNumbers(num1, num2){
	var sum = num1 + num2;
	alert(sum);
}

alert("The sum is " + sum);
addTwoNumbers(3,7);
The sum is not defined.
Question 5

True or false - All user input defaults to being a string, even if the user enters a number.

false
Question 6

What function would you use to convert a string to an integer number?

parseInt
Question 7

What function would you use to convert a string to a number that has a decimal in it (a 'float')?

parseFloat
Question 8

What is the problem with this code sample:

var firstName = prompt("Enter your first name");
if(firstName = "Bob"){
	alert("Hello Bob! That's a common first name!");
}
It is missing a 'else' statement
Question 9

What will the value of x be after the following code executes (in other words, what will appear in the log when the last line executes)?

var x = 7;
x--;
x += 3;
x++;
x *= 2;
console.log(x);
20
Question 10

Explain the difference between stepping over and stepping into a line of code when using the debugger.

The 'Step Into' will observe the code that runs inside the body of the function and 'Step Over' will execute all the lines of code in the function body, then the debugger will move to the next line down.

Coding Problems

Coding Problems - See the 'script' tag at the bottom of the page. You will have to write some JavaScript code in it.