JS Flashcards

1
Q

How do you declare a variable?

A

var, let, or const then name

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

How do you initialize (assign a value to) a variable?

A

equal ( = ) sign

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What characters are allowed in variable names?

A

letters, numbers, symbols

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What does it mean to say that variable names are “case sensitive”?

A

“name” is different from “Name”

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What is the purpose of a string?

A

text content

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What is the purpose of a number?

A

math stuff

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What is the purpose of a boolean?

A

determine true or false

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What does the = operator mean in JavaScript?

A

is assigned to

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

How do you update the value of a variable?

A

variable name = ‘new value’

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What is the difference between null and undefined?

A

null - placed there on purpose, doesn’t exist

undefined - there’s nothing assigned to a variable

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Why is it a good habit to include “labels” when you log values to the browser console?

A

to keep track of what the logs are for

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Give five examples of JavaScript primitives.

A

string, number, boolean, null, undefined

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What data type is returned by an arithmetic operation?

A

number

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What is string concatenation?

A

putting two strings together

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What purpose(s) does the + plus operator serve in JavaScript?

A

addition or concatenating strings

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What data type is returned by comparing two values (, ===, etc)?

A

boolean

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

What does the += “plus-equals” operator do?

A

adding something to the variable, then updating that variable

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

What does the += “plus-equals” operator do?

A

adding something to the variable, then updating that variable

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

What are objects used for?

A

key, value lists

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

What are object properties?

A

variables specifically for objects

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

Describe object literal notation.

A

variable name, the curly-braces surrounding key-value pairs, separated by commas

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

How do you remove a property from an object?

A

delete operator then obj.key

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

What are the two ways to get or update the value of a property?

A

dot notation, or bracket notation

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

What are arrays used for?

A

lists

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Q

Describe array literal notation.

A

variable name, square bracket, then values separated by commas

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
26
Q

How are arrays different from “plain” objects?

A

arrays’ keys are their index numbers

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
27
Q

What number represents the first index of an array?

A

0

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
28
Q

What is the length property of an array?

A

get how many items are in the array

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
29
Q

How do you calculate the last index of an array?

A

array.length - 1

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
30
Q

What is a function in JavaScript?

A

a set of statements that performs a task

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
31
Q

Describe the parts of a function definition.

A

function keyword, optional function name, optional parameters (separated by a comma), function body, optional return statement

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
32
Q

Describe the parts of a function call.

A

function name with parenthesis with optional arguments

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
33
Q

When comparing them side-by-side, what are the differences between a function call and a function definition?

A
function call - function name and parenthesis (optional arguments) 
function definition - has all the jazz, tells the computer what to do
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
34
Q

What is the difference between a parameter and an argument?

A

parameter - used in function definition

argument - used in function call

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
35
Q

Why are function parameters useful?

A

can use keyword for a different things, instead of specifying the item again and again

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
36
Q

What two effects does a return statement have on the behavior of a function?

A
  1. function produces a value that can be used

2. prevents more code in the block from running

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
37
Q

Why do we log things to the console?

A

to inform developers what the code is doing

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
38
Q

What is a method?

A

a function in an object

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
39
Q

How is a method different from any other function?

A

it’s specifically attached to an object

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
40
Q

How do you remove the last element from an array?

A

.pop()

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
41
Q

How do you round a number down to the nearest integer?

A

Math.floor()

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
42
Q

How do you generate a random number?

A

Math.random()

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
43
Q

How do you delete an element from an array?

A

.splice(startIndex, # of items to remove)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
44
Q

How do you append an element to an array?

A

.push()

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
45
Q

How do you break a string up into an array?

A

.split()

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
46
Q

Do string methods change the original string? How would you check if you weren’t sure?

A

no, strings are immutable

use console.log(string) to check

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
47
Q

Roughly how many string methods are there according to the MDN Web docs?

A

30+

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
48
Q

Is the return value of a function or method useful in every situation?

A

no

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
49
Q

Roughly how many array methods are there according to the MDN Web docs?

A

38+

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
50
Q

What three-letter acronym should you always include in your Google search about a JavaScript method or CSS property?

A

MDN

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
51
Q

Give 6 examples of comparison operators.

A

===, !==, less than, greater than, less than or equal to, greater than or equal to

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
52
Q

What data type do comparison expressions evaluate to?

A

boolean

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
53
Q

What is the purpose of an if statement?

A

check if the statement is truthy then it runs a block of code, if not, it does something else

54
Q

Is else required in order to use an if statement?

A

no

55
Q

Describe the syntax (structure) of an if statement.

A

‘if’ keyword (statements) {
code block to run
}

56
Q

What are the three logical operators?

A

&&, ||, !

57
Q

How do you compare two different expressions in the same condition?

A

if (something || something else)

58
Q

What is the purpose of a loop?

A

to repeat a block of code until a condition is met

59
Q

What is the purpose of a condition expression in a loop?

A

to let code know when to start and stop

60
Q

What does “iteration” mean in the context of loops?

A

a run through of a code (one loop)

61
Q

When does the condition expression of a while loop get evaluated?

A

before the start run of every loop

62
Q

When does the initialization expression of a for loop get evaluated?

A

once, at the very beginning

63
Q

When does the condition expression of a for loop get evaluated?

A

before each loop runs

64
Q

When does the final expression of a for loop get evaluated?

A

after each loop runs

65
Q

Besides a return statement, which exits its entire function block, which keyword exits a loop before its condition expression evaluates to false?

A

break

66
Q

What does the ++ increment operator do?

A

adds 1 to the variable

67
Q

How do you iterate through the keys of an object?

A

for (var key in obj)

68
Q

What event is fired when a user places their cursor in a form control?

A

focus

69
Q

What event is fired when a user’s cursor leaves a form control?

A

blur

70
Q

What event is fired as a user changes the value of a form control?

A

input

71
Q

What event is fired when a user clicks the “submit” button within a form?

A

submit

72
Q

What does the event.preventDefault() method do?

A

prevents browser from reloading the page with the form’s values in the URL

73
Q

What does submitting a form without event.preventDefault() do?

A

reloads the page

74
Q

What property of a form element object contains all of the form’s controls.

A

elements

75
Q

What property of form a control object gets and sets its value?

A

.value

76
Q

What is one risk of writing a lot of code without checking to see if it works so far?

A

hard to debug, would have to figure out which part isn’t working

77
Q

What is an advantage of having your console open when writing a JavaScript program?

A

you can see if the code is working properly immediately

78
Q

What is the event.target?

A

whatever element you applied the listener to that you focused/clicked on
The DOM element that you directly interacted with, that triggered the event

79
Q

What is the effect of setting an element to display: none?

A

hidding the element

80
Q

What does the element.matches() method take as an argument and what does it return?

A

argument - selector

returns a boolean

81
Q

How can you retrieve the value of an element’s attribute?

A

.getAttribute

82
Q

At what steps of the solution would it be helpful to log things to the console?

A

every step!

83
Q

If you were to add another tab and view to your HTML, but you didn’t use event delegation, how would your JavaScript code be written instead?

A

create individual event listeners

84
Q

If you didn’t use a loop to conditionally show or hide the views in the page, how would your JavaScript code be written instead?

A

using hard coding

85
Q

What is JSON?

A

a text-based data format following JavaScript object syntax;

JSON exists as a string — useful when you want to transmit data across a network

86
Q

What are serialization and deserialization?

A

Serialization - process where an object or data structure is translated into a format suitable for transferral over a network, or storage
Deserialization - the reverse process: turning a stream of bytes into an object in memory

87
Q

Why are serialization and deserialization useful?

A

serialization allows us to convert the state of an object into a byte stream, which then can be saved into a file on the local disk or sent over the network to any other machine. And deserialization allows us to reverse the process, which means reconverting the serialized byte stream to an object again.

88
Q

How do you serialize a data structure into a JSON string using JavaScript?

A

JSON.stringify()

89
Q

How do you deserialize a JSON string into a data structure using JavaScript?

A

JSON.parse()

90
Q

How to you store data in localStorage?

A

.setItem()

91
Q

How to you retrieve data from localStorage?

A

.getItem()

92
Q

What data type can localStorage save in the browser?

A

string

93
Q

When does the ‘beforeunload’ event fire on the window object?

A

reloading page, clicking to different page, closing tab / browser

94
Q

What is a method?

A

a function which is a property of an object

95
Q

How can you tell the difference between a method definition and a method call?

A

method definition - function is saved as a property

method call - name of object. method name ()

96
Q

Describe method definition syntax (structure).

A

method name: function

97
Q

Describe method call syntax (structure).

A

objectName.methodName()

98
Q

How is a method different from any other function?

A

nothing really;

a method is attached to an object and can only be called through the object

99
Q

What is “abstraction”?

A

being able to work with (possibly) complex things in simple ways

100
Q

What does API stand for?

A

application programming interface

101
Q

What is the purpose of an API?

A

give programmers a way to interact with a system in a simplified, consistent fashion

102
Q

What is the purpose of an API?

A

give programmers a way to interact with a system in a simplified, consistent fashion

103
Q

What is this in JavaScript?

A

the object to the left of the dot at call time

104
Q

When is the value of this determined in a function; call time or definition time?

A

call time

105
Q
What does this refer to in the following code snippet?
var character = {
  firstName: 'Mario',
  greet: function () {
    var message = 'It\'s-a-me, ' + this.firstName + '!';
    console.log(message);
  }
};
A

nothing. this is not being called

106
Q

Given the above character object, what is the result of the following code snippet? Why?
character.greet();

A

“It’s-a-me, Mario!”

107
Q
Given the above character object, what is the result of the following code snippet? Why?
var hello = character.greet;
hello();
A

“It’s-a-me, undefined!”

the run time at hello has nothing at the left of the dot

108
Q

How can you tell what the value of this will be for a particular function or method definition?

A

this will be the object the method is a property of

109
Q

How can you tell what the value of this is for a particular function or method call?

A

unkown

110
Q

How can you tell what the value of this is for a particular function or method call?

A

object on the left side of the dot

111
Q

What does it mean to say that this is an “implicit parameter”?

A

not explicitly defined, this is a value that changes in every function call

112
Q

What kind of inheritance does the JavaScript programming language use?

A

prototype-based (or prototypal) inheritance

113
Q

What is a prototype in JavaScript?

A

an object that contains properties and (predominantly) methods that can be used by other objects

114
Q

How is it possible to call methods on strings, arrays, and numbers even though those methods don’t actually exist on objects, arrays, and numbers?

A

they borrow methods from the prototype object

115
Q

If an object does not have it’s own property or method by a given key, where does JavaScript look for it?

A

__proto__ property

116
Q

What does the new operator do?

A
  1. Creates a blank, plain JavaScript object.
  2. Adds a property to the new object (__proto__) that links to the constructor function’s prototype object
  3. Binds the newly created object instance as the this context
  4. Returns this if the function doesn’t return an object.
117
Q

What property of JavaScript functions can store shared behavior for instances created with new?

A

prototype

118
Q

What does the instanceof operator do?

A

tests to see if the prototype property of a constructor appears anywhere in the prototype chain of an object;
returns a boolean value

119
Q

What is a “callback” function?

A

a function passed into another function as an argument

120
Q

Besides adding an event listener callback function to an element or the document, what is one way to delay the execution of a JavaScript function until some point in the future?

A

setTimeout()

setInterval()

121
Q

How can you set up a function to be called repeatedly without using a loop?

A

setInterval()

122
Q

What is the default time delay if you omit the delay parameter from setTimeout() or setInterval()?

A

0

123
Q

What do setTimeout() and setInterval() return?

A

timerID

124
Q

What is AJAX?

A

a programming practice of building complex, dynamic webpages using a technology known as XMLHttpRequest;

allows you to update parts of the DOM of an HTML page instead without the need for a full page refresh

125
Q

What does the AJAX acronym stand for?

A

Asynchronous JavaScript And XML

126
Q

Which object is built into the browser for making HTTP requests in JavaScript?

A

XMLHttpRequest object

127
Q

What event is fired by XMLHttpRequest objects when they are finished loading the data from the server?

A

load

128
Q

An XMLHttpRequest object has an addEventListener() method just like DOM elements. How is it possible that they both share this functionality?

A

inheritance

129
Q

What is Array.prototype.filter useful for?

A

when you want a new array with only elements that passes a specific test

130
Q

What is Array.prototype.map useful for?

A

when you want a new array with modified elements

131
Q

What is Array.prototype.reduce useful for?

A

when you want a single output from a chunk of data