JavaScript uses let, var, or const without type annotations.
Step 2: Check each option
let x = 5; uses let correctly. int x = 5; uses int which is not valid in JavaScript. var x: number = 5; uses TypeScript syntax. const x = 'hello'; is valid but declares a constant, not a variable that can change.
Final Answer:
let x = 5; -> Option A
Quick Check:
Use let/var/const without types [OK]
Hint: Use let or var without type annotations [OK]
Common Mistakes:
Using type keywords like int or number in plain JavaScript
Confusing const with let for variable declaration
Trying to declare types explicitly in JavaScript
3. What will be the output of this code?
let value = 10;
value = 'hello';
console.log(typeof value);
medium
A. "number"
B. "undefined"
C. "string"
D. TypeError
Solution
Step 1: Track variable type changes
Initially, value is a number 10, then reassigned to string 'hello'.
Step 2: Evaluate typeof operator
typeof value returns the current type, which is "string" after reassignment.
Final Answer:
"string" -> Option C
Quick Check:
typeof after reassignment = "string" [OK]
Hint: typeof shows current type after reassignment [OK]
Common Mistakes:
Assuming type stays as number after reassignment
Confusing typeof output with variable value
Expecting an error when changing types
4. Find the error in this code snippet:
let data = 5;
data = true;
console.log(data.toFixed(2));
medium
A. TypeError because boolean has no toFixed method
B. No error, outputs "5.00"
C. SyntaxError due to reassignment
D. ReferenceError for data variable
Solution
Step 1: Understand variable type changes
Variable data starts as number 5, then changes to boolean true.
Step 2: Check method call on boolean
toFixed is a method for numbers, not booleans, so calling it on a boolean causes a TypeError.
Final Answer:
TypeError because boolean has no toFixed method -> Option A
Quick Check:
Calling number method on boolean causes TypeError [OK]
Hint: Check method compatibility with current variable type [OK]
Common Mistakes:
Assuming toFixed works on booleans
Thinking reassignment causes syntax error
Ignoring runtime errors from wrong method calls
5. You want to write a function that accepts any type of input and returns its type as a string. Which code correctly uses dynamic typing to achieve this?
function getType(input) {
// Your code here
}
hard
A. return typeof input.toString();
B. return input.type;
C. return input.constructor;
D. return typeof input;
Solution
Step 1: Understand typeof operator
typeof returns the type of any JavaScript value as a string.
Step 2: Evaluate each option
return typeof input; correctly returns the type string. return input.type; tries to access a property that may not exist. return input.constructor; returns a function, not a string. return typeof input.toString(); returns "string" always because toString() returns a string.
Final Answer:
return typeof input; -> Option D
Quick Check:
typeof returns type string for any input [OK]
Hint: Use typeof to get type as string for any value [OK]
Common Mistakes:
Using .type property which may be undefined
Returning constructor function instead of string
Calling toString() then typeof, always returns "string"
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.