JavaScript Review

Question 1

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

let grade = calculateLetterGrade(96);
submitFinalGrade(grade);
calculateLetterGrade returns a value because without it 'grade' would be undefinded
Question 2

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

A local variable is able to be called only from the code block its part of while a global variable can be called any time
Question 3

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

const stateTaxRate = 0.06;
const federalTaxRate = 0.11;

function calculateTaxes(wages){
	const totalStateTaxes = wages * stateTaxRate;
	const totalFederalTaxes = wages * federalTaxRate;
	const totalTaxes = totalStateTaxes + totalFederalTaxes;
	return totalTaxes;
}
stateTaxRate and federalTaxRate are global. totalStateTaxesm totalFederalTaxes and totalTaxes are local
Question 4

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

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

alert("The sum is " + sum);
addTwoNumbers(3,7);
Sum is a local variable tring to be called at a global level
Question 5

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

true
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:

let firstName = prompt("Enter your first name");
if(firstName = "Bob"){
	alert("Hello Bob! That's a common first name!");
}
no matter what the user inputs it well set firstname to bob because theres only one '='
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)?

let 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.

step over will go to the next line without calling the function while steo into will call the function but will pause on the first line

Coding Problems

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