-
Notifications
You must be signed in to change notification settings - Fork 2
/
day-12.html
168 lines (152 loc) · 4.67 KB
/
day-12.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8"/>
<title>Intro to JavaScript Day 12</title>
<meta name="author" content="Cameron Gose"/>
<style type="text/css">
.underline { text-decoration: underline; }
</style>
<link rel="stylesheet" href="./reveal.js/css/reveal.css"/>
<link rel="stylesheet" href="./reveal.js/css/theme/solarized.css" id="theme"/>
<!-- If the query includes 'print-pdf', include the PDF print sheet -->
<script>
if( window.location.search.match( /print-pdf/gi ) ) {
var link = document.createElement( 'link' );
link.rel = 'stylesheet';
link.type = 'text/css';
link.href = './reveal.js/css/print/pdf.css';
document.getElementsByTagName( 'head' )[0].appendChild( link );
}
</script>
</head>
<body>
<div class="reveal">
<div class="slides">
<section id="sec-title-slide">
<h1 class="title">Intro to JavaScript Day 12</h1><h2 class="author">Cameron Gose</h2><p class="date">Created: 2021-12-15 Wed 17:33</p>
</section>
<section>
<section id="slide-1">
<h2 id="1"><span class="section-number-2">1.</span> Agenda</h2>
<ul>
<li>Presentation Prep</li>
<li>Presentations</li>
<li>IIFE</li>
<li>Maybe something else if time</li>
</ul>
</section>
</section>
<section>
<section id="slide-2">
<h2 id="2"><span class="section-number-2">2.</span> Presentation Prep</h2>
<ul>
<li>Zoom link shared with everyone in Bitwise</li>
<li>May have some spectators</li>
<li>Any help or questions?</li>
</ul>
</section>
</section>
<section>
<section id="slide-3">
<h2 id="3"><span class="section-number-2">3.</span> Presentation Guidelines</h2>
<ul>
<li>Post your final-project link in your class slack channel</li>
<li>Keep your presentation to 3 minutes</li>
<li>Share your process and experience with the code</li>
<li>What did you struggle with? How did you resolve it?</li>
<li>We will open for questions after each presentation</li>
</ul>
</section>
</section>
<section>
<section id="slide-4">
<h2 id="4"><span class="section-number-2">4.</span> Presentations</h2>
</section>
</section>
<section>
<section id="slide-5">
<h2 id="5"><span class="section-number-2">5.</span> IIFE</h2>
<ul>
<li>Imediately-Invoked Function Expressions</li>
<li>What the heck?</li>
</ul>
</section>
<section id="slide-5-1">
<h3 id="5-1"><span class="section-number-3">5.1.</span> IIFE</h3>
<ul>
<li>Uses functions to encapsulate data</li>
<li>Keeps variables from polluting global scope</li>
<li>This was used because of the scope of `var`</li>
<li>Example</li>
</ul>
</section>
<section id="slide-5-2">
<h3 id="5-2"><span class="section-number-3">5.2.</span> IIFE</h3>
<ul>
<li>Can be used to lock state</li>
<li>Example</li>
</ul>
</section>
<section id="slide-5-3">
<h3 id="5-3"><span class="section-number-3">5.3.</span> IIFE</h3>
<ul>
<li>Can use to group like functionality together</li>
<li>Module Pattern</li>
<li>Example</li>
</ul>
</section>
<section id="slide-5-4">
<h3 id="5-4"><span class="section-number-3">5.4.</span> IIFE</h3>
<ul>
<li>May not need anymore</li>
<li>Good to know</li>
<li>const and let allow blocked scoped variables</li>
<li>JavaScript modules</li>
</ul>
</section>
</section>
<section>
<section id="slide-6">
<h2 id="6"><span class="section-number-2">6.</span> What Now?</h2>
<ul>
<li>Keep learning</li>
<li>Build things</li>
<li>Take the React Class</li>
</ul>
</section>
</section>
</div>
</div>
<script src="./reveal.js/lib/js/head.min.js"></script>
<script src="./reveal.js/js/reveal.js"></script>
<script>
// Full list of configuration options available here:
// https://github.com/hakimel/reveal.js#configuration
Reveal.initialize({
controls: true,
progress: true,
history: false,
center: true,
slideNumber: 'c',
rollingLinks: false,
keyboard: true,
mouseWheel: false,
fragmentInURL: false,
hashOneBasedIndex: false,
pdfSeparateFragments: true,
overview: true,
theme: Reveal.getQueryHash().theme, // available themes are in /css/theme
transition: Reveal.getQueryHash().transition || 'convex', // see README of reveal.js for options
transitionSpeed: 'default',
// Optional libraries used to extend reveal.js
dependencies: [
{ src: './reveal.js/plugin/markdown/marked.js', condition: function() { return !!document.querySelector( '[data-markdown]' ); } },
{ src: './reveal.js/plugin/markdown/markdown.js', condition: function() { return !!document.querySelector( '[data-markdown]' ); } },
{ src: './reveal.js/plugin/notes/notes.js', async: true, condition: function() { return !!document.body.classList; } },
{ src: './reveal.js/plugin/search/search.js', async: true, condition: function() { return !!document.body.classList; } },
{ src: './reveal.js/plugin/zoom-js/zoom.js', async: true, condition: function() { return !!document.body.classList; } }]
});
</script>
</body>
</html>