JavaScript Operators & Expressions Quiz

JavaScript
0 Passed
0% acceptance

A detailed JavaScript quiz exploring arithmetic, comparison, logical, bitwise, and assignment operators through practical expressions and tricky evaluation scenarios.

50 Questions
~100 minutes
1

Question 1

What is the result of the following expression?

javascript
console.log(2 + 3 * 4)
A
20
B
14
C
24
D
18
2

Question 2

How does grouping affect the result?

javascript
console.log((2 + 3) * 4)
A
20
B
14
C
24
D
18
3

Question 3

What value is logged?

javascript
let total = 10
total += 5
console.log(total)
A
5
B
10
C
15
D
20
4

Question 4

What does this expression output?

javascript
let x = 5
console.log(x++)
A
5
B
6
C
undefined
D
Throws an error
5

Question 5

What value will appear in the console?

javascript
let y = 5
console.log(++y)
A
5
B
6
C
7
D
Throws an error
6

Question 6

What result does exponentiation produce here?

javascript
console.log(2 ** 3 ** 2)
A
64
B
512
C
36
D
Error: ambiguous expression
7

Question 7

What is the remainder of this division?

javascript
console.log(5 % 2)
A
2
B
1
C
0
D
-1
8

Question 8

How does JavaScript handle negative operands with modulo?

javascript
console.log(-5 % 2)
A
1
B
-1
C
0
D
Throws an error
9

Question 9

What is logged when dividing by zero?

javascript
console.log(10 / 0)
A
0
B
Infinity
C
NaN
D
Throws an error
10

Question 10

How does JavaScript evaluate 0 divided by 0?

javascript
console.log(0 / 0)
A
0
B
Infinity
C
NaN
D
Throws an error
11

Question 11

What string is produced by this concatenation?

javascript
const result = '5' + 3
console.log(result)
A
'53'
B
'8'
C
8
D
NaN
12

Question 12

What number results from this subtraction?

javascript
const result = '5' - 3
console.log(result)
A
2
B
'2'
C
NaN
D
8
13

Question 13

What is the numeric total?

javascript
console.log(true + true)
A
0
B
1
C
2
D
NaN
14

Question 14

How does multiplication behave with numeric strings?

javascript
console.log('5' * '2')
A
10
B
'10'
C
NaN
D
52
15

Question 15

What is the outcome of this expression?

javascript
console.log('5' + +'2')
A
52
B
7
C
'7'
D
NaN
16

Question 16

What value remains after subtraction assignment?

javascript
let a = 10
a -= 4
console.log(a)
A
6
B
14
C
4
D
10
17

Question 17

How is this compound assignment evaluated?

javascript
let value = 3
value *= 2 + 4
console.log(value)
A
18
B
12
C
9
D
24
18

Question 18

What value does the division assignment produce?

javascript
let base = 16
base /= 2 ** 2
console.log(base)
A
4
B
8
C
16
D
2
19

Question 19

What is the bitwise AND of these numbers?

javascript
const result = 5 & 3
console.log(result)
A
5
B
3
C
1
D
7
20

Question 20

What is the bitwise OR result?

javascript
const result = 5 | 3
console.log(result)
A
7
B
1
C
6
D
3
21

Question 21

What number does bitwise XOR yield?

javascript
const result = 5 ^ 3
console.log(result)
A
6
B
7
C
2
D
1
22

Question 22

How does the bitwise NOT operator transform 5?

javascript
console.log(~5)
A
-6
B
-5
C
6
D
5
23

Question 23

What value does this left shift produce?

javascript
console.log(1 << 3)
A
3
B
8
C
4
D
16
24

Question 24

What is the outcome of this right shift?

javascript
console.log(8 >> 2)
A
2
B
4
C
0
D
6
25

Question 25

What number results from the zero-fill right shift?

javascript
console.log(-9 >>> 1)
A
2147483643
B
-5
C
0
D
9
26

Question 26

What does this chained comparison evaluate to?

javascript
console.log(3 > 2 > 1)
A
true
B
false
C
1
D
Throws an error
27

Question 27

How does grouping change the previous comparison?

javascript
console.log(3 > (2 > 1))
A
true
B
false
C
0
D
Throws an error
28

Question 28

How does loose equality behave?

javascript
console.log('5' == 5)
A
true
B
false
C
Throws an error
D
undefined
29

Question 29

How does strict equality behave with different types?

javascript
console.log('5' === 5)
A
true
B
false
C
Throws an error
D
undefined
30

Question 30

How are null and undefined compared loosely?

javascript
console.log(null == undefined)
A
true
B
false
C
Throws an error
D
undefined
31

Question 31

What is the result of this relational comparison?

javascript
console.log(null >= 0)
A
true
B
false
C
NaN
D
Throws an error
32

Question 32

Does loose equality consider null equal to zero?

javascript
console.log(null == 0)
A
true
B
false
C
0
D
Throws an error
33

Question 33

How are strings compared lexicographically?

javascript
console.log('abc' < 'abd')
A
true
B
false
C
Throws an error
D
undefined
34

Question 34

What happens with numeric strings of different lengths?

javascript
console.log('10' > '2')
A
true
B
false
C
Throws an error
D
undefined
35

Question 35

How does NaN behave with equality?

javascript
console.log(NaN == NaN)
A
true
B
false
C
Throws an error
D
undefined
36

Question 36

Which method correctly detects NaN?

javascript
console.log(Number.isNaN(NaN))
A
true
B
false
C
Throws an error
D
undefined
37

Question 37

What boolean does this coercion produce?

javascript
console.log(!!'0')
A
true
B
false
C
Throws an error
D
undefined
38

Question 38

What value results from this logical expression?

javascript
console.log(!0 && 5)
A
false
B
0
C
5
D
true
39

Question 39

What value does this OR operation return?

javascript
console.log(0 || 'fallback')
A
0
B
'fallback'
C
true
D
false
40

Question 40

How does logical AND short-circuit here?

javascript
console.log('value' && 0)
A
0
B
'value'
C
true
D
false
41

Question 41

What does the logical OR assignment operator do in this case?

javascript
let score = 0
score ||= 10
console.log(score)
A
0
B
10
C
undefined
D
Throws an error
42

Question 42

How does logical AND assignment behave with a truthy value?

javascript
let attempts = 1
attempts &&= 5
console.log(attempts)
A
1
B
5
C
0
D
undefined
43

Question 43

What does nullish coalescing assignment yield here?

javascript
let input = null
input ??= 'default'
console.log(input)
A
null
B
'default'
C
undefined
D
Throws an error
44

Question 44

What does the nullish coalescing operator return?

javascript
console.log(null ?? 'backup')
A
null
B
'backup'
C
undefined
D
Throws an error
45

Question 45

How does nullish coalescing treat zero?

javascript
console.log(0 ?? 5)
A
0
B
5
C
NaN
D
undefined
46

Question 46

What value is produced here?

javascript
const result = undefined ?? 10
console.log(result)
A
undefined
B
10
C
NaN
D
Throws an error
47

Question 47

How does optional chaining interact with nullish coalescing?

javascript
const obj = null
const value = obj?.prop ?? 'none'
console.log(value)
A
null
B
'none'
C
undefined
D
Throws an error
48

Question 48

What does this ternary expression output?

javascript
const result = 5 > 3 ? 'yes' : 'no'
console.log(result)
A
'yes'
B
'no'
C
true
D
false
49

Question 49

How does the ternary operator treat falsy values?

javascript
const result = 0 ? 'truthy' : 'falsy'
console.log(result)
A
'truthy'
B
'falsy'
C
0
D
Throws an error
50

Question 50

What does the comma operator return?

javascript
console.log((2, 4, 6))
A
2
B
4
C
6
D
undefined

QUIZZES IN JavaScript