diff --git a/html_css_resources/code_examples/HTMLCSSCode/Background.css b/html_css_resources/code_examples/HTMLCSSCode/Background.css new file mode 100755 index 0000000000000000000000000000000000000000..c491444f8e936f38bc340e3727c151b80809556c --- /dev/null +++ b/html_css_resources/code_examples/HTMLCSSCode/Background.css @@ -0,0 +1,13 @@ +body { + + /* background properties */ + background-color: silver; + background-image: url(campusBldg.jpg); + background-repeat: repeat-y; /* try repeat-x, repeat-y, no-repeat, repeat */ + background-attachment: fixed; /* try scroll, fixed */ + background-position: center; + + /* shorthand version for above background properties */ + /* DISABLED background: silver url(campusBldg.jpg) repeat-y fixed center; */ + +} diff --git a/html_css_resources/code_examples/HTMLCSSCode/Background.html b/html_css_resources/code_examples/HTMLCSSCode/Background.html new file mode 100755 index 0000000000000000000000000000000000000000..35d55a60e8dd68c90301510a8a04673b5bd47f1f --- /dev/null +++ b/html_css_resources/code_examples/HTMLCSSCode/Background.html @@ -0,0 +1,40 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8" /> + <title>Background</title> + <link rel="stylesheet" href="Background.css" type="text/css" /> + </head> + + <body> + <h1>Partnerships</h1> + + <p> + Another sign of community-building is the growth of UM-partnerships. The investment of pivate + resources in the UM mission suggests that shared goals -education, innovation, and + entrepreneurship--create productive alliances. Such public/private partnerships are helping to + make UM education affordable and accessible to all students. Chevy Chase Bank has joined with UM + in a partnership that will benefit scholarships and better athletics facilities. Dell and Apple + computers have joined forces with the Office of Information Technology to provide affordable + computers for students, faculty and staff. + </p> + + <p> + Progress on the new M Square Research Park, 128 acres at the College Park Metro station, is + another example of such partnerships. Collaboration between the University, the State, the + federal government and private sector businesses promise to build UM's research programs in depth + and breadth. Several steps occurred this year that advanced the University closer to the complete + vision of M Square as a hub for collaborative research initiatives: the National Foreign Language + Center moved into the Patapsco Building at M Square and Datastream graduated from the Technology + Advancement Program on campus to the Technology Ventures building at M Square. Physically, the + site is now primed with 65 acres readied for new building construction. Construction of the first + 120,000 square foot spec building is set to begin this October, and the main road, University + Research Court, is now completed. The residential component of M Square, which will provide + upscale condominiums to researchers and the general public, has received its state approvals. An + exciting feature of this condominium project is that the university will own 50 units, which will + be allocated on a competitive basis to attract the "best and the brightest" graduate and + postdoctoral students and visitors from around the world. + </p> + + </body> +</html> \ No newline at end of file diff --git a/html_css_resources/code_examples/HTMLCSSCode/BackgroundStretch.css b/html_css_resources/code_examples/HTMLCSSCode/BackgroundStretch.css new file mode 100755 index 0000000000000000000000000000000000000000..f92845ce9a5bbb68553cbb25ec6557a3c6a9314d --- /dev/null +++ b/html_css_resources/code_examples/HTMLCSSCode/BackgroundStretch.css @@ -0,0 +1,6 @@ +body { + + background-image: url(campusBldg.jpg); + background-repeat: no-repeat; /* try repeat-x, repeat-y, no-repeat, repeat */ + background-size: 100%; +} diff --git a/html_css_resources/code_examples/HTMLCSSCode/BackgroundStretch.html b/html_css_resources/code_examples/HTMLCSSCode/BackgroundStretch.html new file mode 100755 index 0000000000000000000000000000000000000000..4c347188faf6f5925a41ae2eac26951b8ab6d966 --- /dev/null +++ b/html_css_resources/code_examples/HTMLCSSCode/BackgroundStretch.html @@ -0,0 +1,40 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8" /> + <title>Background</title> + <link rel="stylesheet" href="BackgroundStretch.css" type="text/css" /> + </head> + + <body> + <h1>Partnerships</h1> + + <p> + Another sign of community-building is the growth of UM-partnerships. The investment of pivate + resources in the UM mission suggests that shared goals -education, innovation, and + entrepreneurship--create productive alliances. Such public/private partnerships are helping to + make UM education affordable and accessible to all students. Chevy Chase Bank has joined with UM + in a partnership that will benefit scholarships and better athletics facilities. Dell and Apple + computers have joined forces with the Office of Information Technology to provide affordable + computers for students, faculty and staff. + </p> + + <p> + Progress on the new M Square Research Park, 128 acres at the College Park Metro station, is + another example of such partnerships. Collaboration between the University, the State, the + federal government and private sector businesses promise to build UM's research programs in depth + and breadth. Several steps occurred this year that advanced the University closer to the complete + vision of M Square as a hub for collaborative research initiatives: the National Foreign Language + Center moved into the Patapsco Building at M Square and Datastream graduated from the Technology + Advancement Program on campus to the Technology Ventures building at M Square. Physically, the + site is now primed with 65 acres readied for new building construction. Construction of the first + 120,000 square foot spec building is set to begin this October, and the main road, University + Research Court, is now completed. The residential component of M Square, which will provide + upscale condominiums to researchers and the general public, has received its state approvals. An + exciting feature of this condominium project is that the university will own 50 units, which will + be allocated on a competitive basis to attract the "best and the brightest" graduate and + postdoctoral students and visitors from around the world. + </p> + + </body> +</html> \ No newline at end of file diff --git a/html_css_resources/code_examples/HTMLCSSCode/BoxModel.css b/html_css_resources/code_examples/HTMLCSSCode/BoxModel.css new file mode 100755 index 0000000000000000000000000000000000000000..379cb7e9ab626953a7e54de8acc6733a5a1f596d --- /dev/null +++ b/html_css_resources/code_examples/HTMLCSSCode/BoxModel.css @@ -0,0 +1,47 @@ +body { + font-family: arial, sans-serif; + width: 25em; + height: 25em; + border-style: solid; + border-color: blue; + padding: 1em; /* change to 0 em, 1 ... 6 em */ + margin: 1em; /* change to 0 em, 1 ... 6 em */ +} + +#paddingTests { + background-color: gray; + color: yellow; + width: 4em; + height: 2em; + + padding: 1em; /* change to 0 em, 1 ... 6 em */ + border-color: red; + border-style: solid; + border-width: 1em; /* change to .5 em */ +} + +#marginTests { + background-color: gray; + color: yellow; + width: 4em; + height: 2em; + + margin: 2em; /* change to 0 em, 1 ... 6 em */ + border-color: red; + border-style: solid; + border-width: 1em; +} + +#outer { + width: 6em; + border-color: red; + border-style: ridge; + border-width: 1em; +} + +#inner { + border-color: blue; + border-style: solid; + border-width: .5em; + padding-left: .5em; +} \ No newline at end of file diff --git a/html_css_resources/code_examples/HTMLCSSCode/BoxModel.html b/html_css_resources/code_examples/HTMLCSSCode/BoxModel.html new file mode 100755 index 0000000000000000000000000000000000000000..429171b24feb97397a05a101b39c17eb8ab7d051 --- /dev/null +++ b/html_css_resources/code_examples/HTMLCSSCode/BoxModel.html @@ -0,0 +1,24 @@ +<!doctype html> +<html> + <head> + <meta charset="utf-8" /> + <title>Box Model Tests</title> + <link rel="stylesheet" href="BoxModel.css" /> + </head> + + <body> + <p id="paddingTests"> + Terps + </p> + + <p id="marginTests"> + Terps + </p> + + <div id="outer"> + <div id="inner"> + Testudo + </div> + </div> + </body> +</html> \ No newline at end of file diff --git a/html_css_resources/code_examples/HTMLCSSCode/DescendantSelector.css b/html_css_resources/code_examples/HTMLCSSCode/DescendantSelector.css new file mode 100755 index 0000000000000000000000000000000000000000..4dfc040ccf31a37b8d3197a28e45902521775424 --- /dev/null +++ b/html_css_resources/code_examples/HTMLCSSCode/DescendantSelector.css @@ -0,0 +1,15 @@ +body { + font-family: arial, sans-serif; +} + +a { + font-size: 2em; + color: green; +} + +/* When a found in li override previous a definition */ +li a { + font-size: 4em; + font-style: italic; + color: red; +} diff --git a/html_css_resources/code_examples/HTMLCSSCode/DescendantSelector.html b/html_css_resources/code_examples/HTMLCSSCode/DescendantSelector.html new file mode 100755 index 0000000000000000000000000000000000000000..1b7add328ec400548a777dbcd722bed0cfc841cf --- /dev/null +++ b/html_css_resources/code_examples/HTMLCSSCode/DescendantSelector.html @@ -0,0 +1,21 @@ +<!doctype html> +<html> + <head> + <meta charset="utf-8" /> + <title>Descendant Selectors</title> + <link rel="stylesheet" href="DescendantSelector.css" type="text/css" /> + </head> + + <body> + <h1>Local Newspaper</h1> + <p> + For news about the City of College Park and the University of Maryland you can check + the (<a href="http://www.diamondbackonline.com/">Diamondback</a>) + </p> + <h1>World News</h1> + <ul> + <li><a href="http://www.cnn.com/">CNN</a></li> + <li>Nightly News</li> + </ul> + </body> +</html> \ No newline at end of file diff --git a/html_css_resources/code_examples/HTMLCSSCode/ExternalFile.css b/html_css_resources/code_examples/HTMLCSSCode/ExternalFile.css new file mode 100755 index 0000000000000000000000000000000000000000..2cc1e7dd72e25b852f263e9331b29b671f679c96 --- /dev/null +++ b/html_css_resources/code_examples/HTMLCSSCode/ExternalFile.css @@ -0,0 +1,2 @@ +h1 {color: red;} +p {font-size: 2em;} \ No newline at end of file diff --git a/html_css_resources/code_examples/HTMLCSSCode/ExternalFile.html b/html_css_resources/code_examples/HTMLCSSCode/ExternalFile.html new file mode 100755 index 0000000000000000000000000000000000000000..a8e3d3fcda74a30df8877006020c4faa0d327fae --- /dev/null +++ b/html_css_resources/code_examples/HTMLCSSCode/ExternalFile.html @@ -0,0 +1,13 @@ +<!doctype html> + <head> + <meta charset="utf-8" /> + <title>External Style File</title> + <!-- The next line connects this file with the style sheet --> + <link rel="stylesheet" href="ExternalFile.css" type="text/css" /> + </head> + <body> + <h1>Additional information</h1> + <p> Additional information can be found through the undergraduate web page. + </p> + </body> +</html> \ No newline at end of file diff --git a/html_css_resources/code_examples/HTMLCSSCode/HTML5Elements.html b/html_css_resources/code_examples/HTMLCSSCode/HTML5Elements.html new file mode 100755 index 0000000000000000000000000000000000000000..7332533c7c248a4aac34380e18b1940b7a163f37 --- /dev/null +++ b/html_css_resources/code_examples/HTMLCSSCode/HTML5Elements.html @@ -0,0 +1,53 @@ +<!doctype html> + +<html> + <head> + <meta charset="utf-8" /> + <title>HTML5 Elements</title> + </head> + + <body> + <header> + <h1>Review Site</h1> + </header> + + <nav> + <a href="http://www.umd.edu">UMD Web Site</a> + </nav> + + <article class="programming_languages_reviews"> + <header> + <h2>Java</h2> + </header> + + <section class="faculty_reviews"> + <h2>Faculty Reviews</h2> + + <article class="faculty_review"> + <h2>Dr. JavaJava</h2> + <p>Great Language</p> + <footer> + <p>Submitted on <time datetime="2016-01-04 17:00">Jan 4</time></p> + </footer> + </article> + + <article class="faculty_review"> + <h2>Dr. AssemblyAssembly</h2> + <p>I prefer Assembly</p> + <footer> + <p>Submitted on <time datetime="2016-01-02 14:00">Jan 2</time></p> + </footer> + </article> + + </section> + + <footer> + <p>UMCP Java Reviews</p> + </footer> + </article> + + <footer> + ©UMCP + </footer> + </body> +</html> \ No newline at end of file diff --git a/html_css_resources/code_examples/HTMLCSSCode/InternalStyle.html b/html_css_resources/code_examples/HTMLCSSCode/InternalStyle.html new file mode 100755 index 0000000000000000000000000000000000000000..7cdaa3a67cb34059bcb825f790d47ae5c138cb72 --- /dev/null +++ b/html_css_resources/code_examples/HTMLCSSCode/InternalStyle.html @@ -0,0 +1,16 @@ +<!doctype html> +<html> + <head> + <meta charset="utf-8" /> + <title>Inline Style</title> + <style type="text/css"> + h1 {color: blue} + p {font-size: 10px} + </style> + </head> + <body> + <h1>Introduction to CS</h1> + <p>The following information is provided by the Department of Computer Science. + </p> + </body> +</html> \ No newline at end of file diff --git a/html_css_resources/code_examples/HTMLCSSCode/PseudoElements.css b/html_css_resources/code_examples/HTMLCSSCode/PseudoElements.css new file mode 100755 index 0000000000000000000000000000000000000000..49060aae50e4a95318bea5ec30acc657498aeb2d --- /dev/null +++ b/html_css_resources/code_examples/HTMLCSSCode/PseudoElements.css @@ -0,0 +1,9 @@ +body { + font-family: serif; /* notice, using serif */ +} + +/* Try first-line as well */ +p:first-letter { + font-weight: bold; + font-size: 4em; +} diff --git a/html_css_resources/code_examples/HTMLCSSCode/PseudoElements.html b/html_css_resources/code_examples/HTMLCSSCode/PseudoElements.html new file mode 100755 index 0000000000000000000000000000000000000000..3f26c29bc10b9e3150aa0c494327b5357666cfb0 --- /dev/null +++ b/html_css_resources/code_examples/HTMLCSSCode/PseudoElements.html @@ -0,0 +1,23 @@ +<!doctype html> +<html> + <head> + <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + <title>Pseudoelements</title> + <link rel="stylesheet" href="PseudoElements.css" type="text/css" /> + </head> + + <body> + <h1>Partnerships</h1> + <p> + The future of public higher education in America depends on forming effective partnerships + with government, industry, business, faculty and students to carry on the discovery and + creation of knowledge that underlies the continuing improvement of our social, civic, + economic and cultural lives. + </p> + + <p> + The President has facilitated the establishment and enhancement of many partnerships that + will benefit both the university and the larger society. + </p> + </body> +</html> \ No newline at end of file diff --git a/html_css_resources/code_examples/HTMLCSSCode/Selectors.css b/html_css_resources/code_examples/HTMLCSSCode/Selectors.css new file mode 100755 index 0000000000000000000000000000000000000000..50bf40e6560f769361c053255fd81f3b8aa032ae --- /dev/null +++ b/html_css_resources/code_examples/HTMLCSSCode/Selectors.css @@ -0,0 +1,101 @@ +/* This is a comment in CSS */ +/* The next line tell us the font to look for. The last line is a generic +/* font family (serif, sans-serif, monospace)*/ + +body { + font-family: arial, Helvetica, "Times New Roman", sans-serif; + /* background: #F5F5DC; */ + background: rgba(125, 125, 125, 0.5); + color: teal; + font-size: 90%; /* try different percentages */ +} + +a:link { + color: blue; +} + +a:visited { + color:purple; +} + +a:hover { + color: red; +} + +a:active { + color: gray; +} + + +h1 { + color: gray; +} + + +pre { + color: gray; + font-style: italic; + text-align: center; +} + +pre:hover { + font-size: 2em; +} + +strong { + color: red; +} + +ol { + list-style-type: lower-latin; /* try lower-roman, upper-roman, upper-latin */ +} + +ul { + color: maroon; + list-style-image: url(bus.gif); + /* list-style-type: circle; /* try disc, square, none */ +} + +table { + background-color: black; /* try commenting this out */ + border-collapse: separate; /* try collapse */ + border-style: double; /* try solid, dashed, groove, ridge, inset, outset */ + border-color: red; + border-width: .125em; + text-align: center; /* try left, right */ +} + +th { + background-color: #F5DEB3; + padding: 8px; +} + +td { + background-color: white; +} + +/* class selector */ +.styleOne { + color: red; + font-style: italic; + text-align: center; +} + +/* class selector */ +.styleTwo { + color: gray; + font-style: oblique; + text-align: center; +} + +.styleThree { + color: blue; + background-color: white; +} + +/* id selector */ +#additionalInfo { + color: green; + font-weight: bold; /* try normal, bolder, 100, 200, 300, 400 (normal)..., 700 (bold), 900*/ + text-align: center; +} \ No newline at end of file diff --git a/html_css_resources/code_examples/HTMLCSSCode/Selectors.html b/html_css_resources/code_examples/HTMLCSSCode/Selectors.html new file mode 100755 index 0000000000000000000000000000000000000000..1da5d6269df7ae81f9e87cd57dc8f92eaa2879d1 --- /dev/null +++ b/html_css_resources/code_examples/HTMLCSSCode/Selectors.html @@ -0,0 +1,72 @@ +<!doctype html> +<head> + <meta charset="utf-8" /> + <title>Class Id Selectors</title> + <link rel="stylesheet" href="Selectors.css" /> +</head> +<body> + <h1>The Road Not Taken</h1> + + <p> The following is a famous poem by <em>Robert Frost</em>(1874–1963). + We will study his work this semester. + </p> + + <!-- careful with the identation of pre --> + <pre class="styleOne"> + Two roads diverged in a yellow wood + And sorry I could not travel both + And be one traveler, long I stood + And looked down one as far as I could + To where it bent in the undergrowth + </pre> + + <!-- notice the use of multiple class selectors --> + <pre class="styleTwo styleThree"> + Then took the other as just as fair + And having perhaps the better claim + Because it was grassy and wanted wear; + Though as for that, the passing there + Had worn them really about the same + </pre> + + <pre class="styleOne"> + And both that morning equally lay + In leaves no step had trodden black + Oh, I kept the first for another day! + Yet knowing how way leads onto way + I doubted if I should ever come back + </pre> + + <pre class="styleTwo"> + I shall be telling this with a sigh + Somewhere ages and ages hence + Two roads diverged in a wood + And I took the one less traveled by + And that has made all the difference + </pre> + + <h2>Midterm Paper Questions</h2> + <ol> + <li>Which road would you travel(<strong>today</strong>)?</li> + <li>Which road have you been taken?</li> + </ol> + + <h3>Final Paper Questions</h3> + <ul> + <li>Compare Robert Frost work with another author discussed in lecture.</li> + <li>What is the major contribution of Robert Frost's work?</li> + </ul> + + <h3>Schedule</h3> + <table> + <tr><th>Week</th> <th>Reading</th> <th>Work</th> </tr> + <tr><td>1 </td> <td>Poem</td> <td>Report</td> </tr> + <tr><td>2 </td> <td>Paper</td> <td>Quiz</td> </tr> + </table> + + <h3>Additional information</h3> + <p id="additionalInfo" >You can find additional information in + <a href="http://en.wikipedia.org/wiki/The_Road_Not_Taken_(poem)">Wikipedia Reference</a> + </p> +</body> +</html> \ No newline at end of file diff --git a/html_css_resources/code_examples/HTMLCSSCode/ShorthandProperties.css b/html_css_resources/code_examples/HTMLCSSCode/ShorthandProperties.css new file mode 100755 index 0000000000000000000000000000000000000000..2dcfb0f6bc611a5c39c4ac995d1b14e836956b19 --- /dev/null +++ b/html_css_resources/code_examples/HTMLCSSCode/ShorthandProperties.css @@ -0,0 +1,46 @@ +body { + font-family: arial, Helvetica, sans-serif; + background: #F5F5DC; + font-size: 90%; +} + +.noShorthand { + /* Font specification */ + font-style: italic; + font-variant: small-caps; + font-weight: normal; + font-size: .80em; + line-height: 1.1em; + font-family: Verdana, Arial, sans-serif; + + /* Border specification */ + border-width: 2em; + border-style: solid; + border-color: green; + + /* Margin specification */ + margin-top:6em; + margin-right:8em; + margin-bottom:4em; + margin-left:2em; + + /* Padding specification*/ + padding-top:3em; + padding-right:4em; + padding-bottom:2em; + padding-left:1em; +} + +.withShorthand { + /* Font specification */ + font: italic small-caps normal .80em/1.1em Verdana, Arial, sans-serif; + + /* Border specification */ + border: 2em solid green; + + /* Margin specification */ + margin: 6em 8em 4em 2em; + + /* Padding specification*/ + padding: 3em 4em 2em 1em; +} diff --git a/html_css_resources/code_examples/HTMLCSSCode/ShorthandProperties.html b/html_css_resources/code_examples/HTMLCSSCode/ShorthandProperties.html new file mode 100755 index 0000000000000000000000000000000000000000..c1d0701a1e78dc88438d290dd7c5293b69832c26 --- /dev/null +++ b/html_css_resources/code_examples/HTMLCSSCode/ShorthandProperties.html @@ -0,0 +1,23 @@ +<!doctype html> +<html> + <head> + <meta charset="utf-8" /> + <title>Shorthand Properties</title> + <link rel="stylesheet" href="ShorthandProperties.css" type="text/css" /> + </head> + + <body> + <h1>Partnerships</h1> + <p class="noShorthand"> + The future of public higher education in America depends on forming effective partnerships + with government, industry, business, faculty and students to carry on the discovery and + creation of knowledge that underlies the continuing improvement of our social, civic, + economic and cultural lives. + </p> + + <p class="withShorthand"> + The President has facilitated the establishment and enhancement of many partnerships that + will benefit both the university and the larger society. + </p> + </body> +</html> \ No newline at end of file diff --git a/html_css_resources/code_examples/HTMLCSSCode/TableNoBorders.html b/html_css_resources/code_examples/HTMLCSSCode/TableNoBorders.html new file mode 100755 index 0000000000000000000000000000000000000000..4ef85d98f1b4ead0e5a08c192fe67b6a42b153c4 --- /dev/null +++ b/html_css_resources/code_examples/HTMLCSSCode/TableNoBorders.html @@ -0,0 +1,15 @@ +<!doctype html> +<html> + <head> + <meta charset="utf-8" /> + <title>Table No Borders</title> + </head> + <body> + <table> + <caption>Basic Table</caption> + <tr> <th></th> <th>Exam1</th> <th>Exam2</th></tr> + <tr> <td>Student1</td> <td>10</td> <td>100</td> </tr> + <tr> <td>Student2</td> <td>20</td> <td>200</td> </tr> + </table> + </body> +</html> \ No newline at end of file diff --git a/html_css_resources/code_examples/HTMLCSSCode/TableWithBorders.html b/html_css_resources/code_examples/HTMLCSSCode/TableWithBorders.html new file mode 100755 index 0000000000000000000000000000000000000000..cb89ef167992b2af9e9424d34d3c54037a96aeef --- /dev/null +++ b/html_css_resources/code_examples/HTMLCSSCode/TableWithBorders.html @@ -0,0 +1,33 @@ +<!doctype html> +<html> + <head> + <meta charset="utf-8" /> + <title>Tables</title> + </head> + <body> + <table border="1"> + <caption><em>Table Border 1</em></caption> + <tr> <th></th> <th>Exam1</th> <th>Exam2</th></tr> + <tr> <td>Student1</td> <td>10</td> <td>100</td> </tr> + <tr> <td>Student2</td> <td>20</td> <td>200</td> </tr> + </table> + + <!-- Table with colspan --> + <table border="1"> + <caption><em>Table with colspan</em></caption> + <tr> <th colspan="2">Exam1</th> <th>Exam2</th> </tr> + <tr> <td>Student1</td> <td>10</td> <td>100</td> </tr> + <tr> <td>Student2</td> <td>20</td> <td>200</td> </tr> + </table> + + <!-- Table with rowspan --> + <table border="1"> + <caption><em>Table with rowspan</em></caption> + <tr> <th></th> <th>Exam1</th> <th>Exam2</th> </tr> + <tr> <td>Student1</td> <td>10</td> <td>100</td> </tr> + <tr> <td rowspan="3">Student2</td> <td>20</td> <td>200</td> </tr> + <tr> <td>40(Retaken)</td> <td>400(Retaken)</td> </tr> + <tr> <td>60(Retaken)</td> <td>600(Retaken)</td> </tr> + </table> + </body> +</html> \ No newline at end of file diff --git a/html_css_resources/code_examples/HTMLCSSCode/Tables.html b/html_css_resources/code_examples/HTMLCSSCode/Tables.html new file mode 100755 index 0000000000000000000000000000000000000000..7e3329f949e94d9b7ff08d83b9a77184725ba17f --- /dev/null +++ b/html_css_resources/code_examples/HTMLCSSCode/Tables.html @@ -0,0 +1,32 @@ +<!doctype html> +<html> + <head> + <meta charset="utf-8" /> + <title>Tables</title> + <style> + table, td, th { border: 1px solid gray } + </style> + </head> + + <body> + <table> + <thead> + <tr> + <th>Assignment</th> + <th>Grade</th> + </tr> + </thead> + + <tfoot> + <tr> + <td colspan="2">UMCP CS Dept</td> + </tr> + </tfoot> + + <tbody> + <tr><td>Project #1</td><td>100</td></tr> + <tr><td>Project #2</td><td>90</td></tr> + </tbody> + </table> + </body> +</html> \ No newline at end of file diff --git a/html_css_resources/code_examples/HTMLCSSCode/bus.gif b/html_css_resources/code_examples/HTMLCSSCode/bus.gif new file mode 100755 index 0000000000000000000000000000000000000000..45595ec5801640e52f62f3560a820e0925f833f0 Binary files /dev/null and b/html_css_resources/code_examples/HTMLCSSCode/bus.gif differ diff --git a/html_css_resources/code_examples/HTMLCSSCode/campusBldg.jpg b/html_css_resources/code_examples/HTMLCSSCode/campusBldg.jpg new file mode 100755 index 0000000000000000000000000000000000000000..0a965bf27cc8fc0d180b454e4b775cfdd38d108d Binary files /dev/null and b/html_css_resources/code_examples/HTMLCSSCode/campusBldg.jpg differ diff --git a/html_css_resources/code_examples/HTMLCSSCode/testudo.jpg b/html_css_resources/code_examples/HTMLCSSCode/testudo.jpg new file mode 100755 index 0000000000000000000000000000000000000000..87fe5c80bab6a13bda15eeb0717acdfc449cc4d6 Binary files /dev/null and b/html_css_resources/code_examples/HTMLCSSCode/testudo.jpg differ diff --git a/html_css_resources/code_examples/IntroHTMLCode/BasicHTMLSkeleton.html b/html_css_resources/code_examples/IntroHTMLCode/BasicHTMLSkeleton.html new file mode 100755 index 0000000000000000000000000000000000000000..04d05e2c50cfdbad37bafeb2acba909b141d802c --- /dev/null +++ b/html_css_resources/code_examples/IntroHTMLCode/BasicHTMLSkeleton.html @@ -0,0 +1,16 @@ +<!doctype html> +<html> + <head> + <meta charset="utf-8" /> + <!-- For responsive page --> + <meta name="viewport" content="width=device-width, initial-scale=1.0" /> + <meta name="description" content="Basic HTML5 Document" /> + <meta name="keywords" content="HTML5, Responsive"/> + <link href="favicon.ico" rel="icon" type="image/x-icon" /> + <title>HTML TEMPLATE</title> + </head> + + <body> + YOUR HTML CODE GOES HERE + </body> +</html> \ No newline at end of file diff --git a/html_css_resources/code_examples/IntroHTMLCode/CharacterReferences.html b/html_css_resources/code_examples/IntroHTMLCode/CharacterReferences.html new file mode 100755 index 0000000000000000000000000000000000000000..f9c6a9cbb178fcd05ac2c5bdd204759dcd9cf418 --- /dev/null +++ b/html_css_resources/code_examples/IntroHTMLCode/CharacterReferences.html @@ -0,0 +1,26 @@ +<!doctype html> +<html> + <head> + <meta charset="utf-8" /> + <meta name="viewport" content="width=device-width, initial-scale=1.0" /> + <title>Character References</title> + </head> + +<body> + <table> + <tr> <th>Name</th> <th>Symbol</th> </tr> + <tr> <td>Copyright</td> <td>©</td> </tr> + <tr> <td>Registered Trademark</td> <td>®</td> </tr> + <tr> <td>Ampersand</td> <td>&</td> </tr> + <tr> <td>Less than</td> <td><</td> </tr> + <tr> <td>Greater than</td> <td>></td> </tr> + <tr> <td>Right Arrow</td> <td>→</td> </tr> + <tr> <td>Left Arrow</td> <td>←</td> </tr> + <tr> <td>Non-breaking space</td> <td> </td> </tr> + <tr> <td>Pi</td> <td>π</td> </tr> + <tr> <td>Degree</td> <td>°</td> </tr> + <tr> <td>Acute</td> <td>´</td> </tr> + <tr> <td>Infinity</td> <td>∞</td> </tr> + </table> +</body> +</html> \ No newline at end of file diff --git a/html_css_resources/code_examples/IntroHTMLCode/CommonTags.html b/html_css_resources/code_examples/IntroHTMLCode/CommonTags.html new file mode 100755 index 0000000000000000000000000000000000000000..f0b0725eff9d1ff4fd30f5c142ea851b3b2a5d4d --- /dev/null +++ b/html_css_resources/code_examples/IntroHTMLCode/CommonTags.html @@ -0,0 +1,67 @@ +<!doctype html> +<html> + <head> + <meta charset="utf-8" /> + <meta name="viewport" content="width=device-width, initial-scale=1.0" /> + <title>Common Tags</title> + </head> + + <body> + <h1>Introduction(h1)</h1> + <h2>Overview(h2)</h2> + <h3>Conclusion(h3)</h3> + <h4>References(h4)</h4> + <h5>Appendix A(h5)</h5> + <h6>Appendix B(h6)</h6> + + <p> + This document presents some frequently used tags for the + development of html files. For example, the text you are currently + reading is enclosed in <p> </p> tags. + </p> + + <p> + This line illustrates that we <b>can bold</b> easily with the + <b> tag. + </p> + + <p> + Now we are illustrating how we can create superscripts + (10<sup>th</sup>) or subscript (log<sub> 2 </sub> n) + </p> + + <p> + Showing how to generate quotes: <q>To be or not to be</q> + </p> + + <p>Java code printed using the pre tags: + </p> + + <pre> + /* Java code presented using the <strong>pre tag</strong> */ + import javax.swing.*; + public static void main(String[] args) { + System.out.println("Hello World"); + } + </pre> + + <p>Java code printed using p tags: + </p> + + <p> + /* Java code presented using the <strong>pre tag</strong> */ + import javax.swing.*; + public static void main(String[] args) { + System.out.println("Hello World"); + } + </p> + + <p> + <em>This line has been displayed using the <em> + tag</em><br /> <strong>This line has been displayed using the + <strong> tag</strong><br /> <b>This line has been + displayed using the <b> tag</b><br /> <i>This line has + been displayed using the <i> tag</i><br /> + </p> + </body> +</html> \ No newline at end of file diff --git a/html_css_resources/code_examples/IntroHTMLCode/Image.html b/html_css_resources/code_examples/IntroHTMLCode/Image.html new file mode 100755 index 0000000000000000000000000000000000000000..62d96754c6d5e21d694439dc7a5bd197d99f41ef --- /dev/null +++ b/html_css_resources/code_examples/IntroHTMLCode/Image.html @@ -0,0 +1,14 @@ +<!doctype html> +<html> + <head> + <meta charset="utf-8" /> + <meta name="viewport" content="width=device-width, initial-scale=1.0" /> + <title>Image</title> + </head> + + <body> + <p>The School mascot is Testudo. + <img src="testudo.jpg" width="84" height="111" alt="Testudos' image'" /> + </p> + </body> +</html> \ No newline at end of file diff --git a/html_css_resources/code_examples/IntroHTMLCode/Links.html b/html_css_resources/code_examples/IntroHTMLCode/Links.html new file mode 100755 index 0000000000000000000000000000000000000000..4698fda3cb9e02092e3bc51f01cc2f2232255b79 --- /dev/null +++ b/html_css_resources/code_examples/IntroHTMLCode/Links.html @@ -0,0 +1,56 @@ +<!doctype html> +<html> + <head> + <meta charset="utf-8" /> + <meta name="viewport" content="width=device-width, initial-scale=1.0" /> + <title>Links</title> + <style> + #p1 { + margin-bottom: 70em; + } + </style> + </head> + + <body> + <h1>Link Examples</h1> + <p id="p1"> + <a href="http://www.cnn.com">CNN Web Page</a> + + <br /><br /> + <a href="http://www.umd.edu"><img src="testudo.jpg" width="84" height="111" alt="Testudos Image" /></a> + + <br /><br /> + <a href="Image.html">Image Example Page</a> + + <!-- bookmarks allow us to jump to specific parts of a page --> + <a href="#courseInfo">Course Info</a> + + <!-- if the bookmark is in another page it can be accessed as follows: --> + <a href="anotherPage.html#data">Bookmark to Data</a> + + <a href="#">Current Page Link</a> + + <!-- Opens page in new window/tab --> + <br /><br /> + <a href="Image.html" target="_blank">Image Example Page in New Window/Tab</a> + + </p> + <h2 id="courseInfo">Course Info</h2> <!-- id attribute allow us to create bookmark --> + <p> + This course provides an introduction to the development of Web-based + applications using PHP, JavaScript, MySQL/MariaDB, and Apache. + The course covers fundamental programming language constructs + of both PHP and JavaScript, forms, sessions, interation with + MySQL/MariaDB via PHP, DOM, and JavaScript event-handling. In + addition, popular JavaScript libraries (e.g., JQuery) will be + overviewed. + </p> + + <a href="#">Current Page Link</a> + + <ul> + <li><a href="description.pdf">description.pdf</a></li> + <li><a href="description.pdf" download>description.pdf (with download option)</a></li> + </ul> + </body> +</html> \ No newline at end of file diff --git a/html_css_resources/code_examples/IntroHTMLCode/Lists.html b/html_css_resources/code_examples/IntroHTMLCode/Lists.html new file mode 100755 index 0000000000000000000000000000000000000000..b77e94081fa5b0f42bdddcbb1c83a11a62ffa647 --- /dev/null +++ b/html_css_resources/code_examples/IntroHTMLCode/Lists.html @@ -0,0 +1,55 @@ +<!doctype html> +<html> + <head> + <meta charset="utf-8" /> + <meta name="viewport" content="width=device-width, initial-scale=1.0" /> + <title>Lists</title> + </head> + + + <body> + <h2>Unordered List</h2> + <ul> + <li>Java</li> + <li>PHP</li> + </ul> + + <h2>Ordered List</h2> + <ol> + <li>Java</li> + <li>PHP</li> + </ol> + + <h2>Ordered List (Reversed)</h2> + <ol reversed> + <li>Java</li> + <li>PHP</li> + </ol> + + <h2>Nested Lists</h2> + <ol> + <li>Old Languages + <ol> + <li>Fortran</li> + <li>C</li> + </ol> + </li> + + <li>New Languages + <ul> + <li>JavaScript</li> + <li>C#</li> + </ul> + </li> + </ol> + + <h2>Definition List</h2> + <dl> + <dt>cmsc131</dt> + <dd>First Java Course</dd> + <dt>cmsc132</dt> + <dd>Second Java Course</dd> + </dl> + + </body> +</html> \ No newline at end of file diff --git a/html_css_resources/code_examples/IntroHTMLCode/description.pdf b/html_css_resources/code_examples/IntroHTMLCode/description.pdf new file mode 100755 index 0000000000000000000000000000000000000000..1f266ec5fd4332c4b5c8f9fac44d45c5636beb27 Binary files /dev/null and b/html_css_resources/code_examples/IntroHTMLCode/description.pdf differ diff --git a/html_css_resources/code_examples/IntroHTMLCode/favicon.ico b/html_css_resources/code_examples/IntroHTMLCode/favicon.ico new file mode 100755 index 0000000000000000000000000000000000000000..d06a467e8a4930ec8af8dca28ce3ce6b387dfd6b Binary files /dev/null and b/html_css_resources/code_examples/IntroHTMLCode/favicon.ico differ diff --git a/html_css_resources/code_examples/IntroHTMLCode/testudo.jpg b/html_css_resources/code_examples/IntroHTMLCode/testudo.jpg new file mode 100755 index 0000000000000000000000000000000000000000..87fe5c80bab6a13bda15eeb0717acdfc449cc4d6 Binary files /dev/null and b/html_css_resources/code_examples/IntroHTMLCode/testudo.jpg differ diff --git a/html_css_resources/slides/HTMLCSS.pdf b/html_css_resources/slides/HTMLCSS.pdf new file mode 100644 index 0000000000000000000000000000000000000000..169b6d3d702cad2444613276713c62b55029c0ea Binary files /dev/null and b/html_css_resources/slides/HTMLCSS.pdf differ diff --git a/html_css_resources/slides/IntroHTML.pdf b/html_css_resources/slides/IntroHTML.pdf new file mode 100644 index 0000000000000000000000000000000000000000..30c48b73902a91eb0abb8c2c39af9ef8927d2d44 Binary files /dev/null and b/html_css_resources/slides/IntroHTML.pdf differ diff --git a/javascript_resources/code_examples/EventsJSClassesCode/AccessingElementEventOcurred.html b/javascript_resources/code_examples/EventsJSClassesCode/AccessingElementEventOcurred.html new file mode 100755 index 0000000000000000000000000000000000000000..21e2924585ba4b3395d6e960f439325540cd4423 --- /dev/null +++ b/javascript_resources/code_examples/EventsJSClassesCode/AccessingElementEventOcurred.html @@ -0,0 +1,52 @@ +<!doctype html> +<html lang="en"> + <head> + <title>Example</title> + <meta charset="utf-8" /> + </head> + + <body> + <div id="OuterElement"> + This text is part of the + outer element.<br><br><br> + <div id="InnerElement"> +   This text is part of the inner element.<br><br><br> + <div id="WayInnerElement"> +       This text is part of the way inner element :)<br><br><br> + </div> + </div> + </div> + <script> + /* This refers to the element on which the event handler is registered and it does need to be + * the element on which the event occurs */ + + let outerElement = document.getElementById("OuterElement"); + let innerElement = document.getElementById("InnerElement"); + let wayInnerElement = document.getElementById("WayInnerElement"); + + outerElement.addEventListener("click", function (event) { + + if (this == outerElement) { + alert("this is refering to outerElement"); + } else if (this == innerElement) { + alert("this is referring to innerElement"); + } else if (this == wayInnerElement) { + alert("this is referring to wayInnerElement"); + } else { + alert("other"); + } + if (event.target == outerElement) { + alert("outerElement was the target"); + } else if (event.target == innerElement) { + alert("innerElement was the target"); + } else if (event.target == wayInnerElement) { + alert("wayInnerElement was the target"); + } else { + alert("Other"); + } + }); + //innerElement.addEventListener("click", () => alert("InnerElement")); + //wayInnerElement.addEventListener("click", () => alert("WayInnerElement")); + </script> + </body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/EventsJSClassesCode/ArrayMethods1.html b/javascript_resources/code_examples/EventsJSClassesCode/ArrayMethods1.html new file mode 100755 index 0000000000000000000000000000000000000000..4c247484e8c49dba5f984e7e05e50739a1c4b5bd --- /dev/null +++ b/javascript_resources/code_examples/EventsJSClassesCode/ArrayMethods1.html @@ -0,0 +1,31 @@ +<!doctype html> +<html lang="en"> + <head> + <title>Example</title> + <meta charset="utf-8" /> + </head> + + <body> + <script> + const a = [10, 20, 30]; + a.length = 4; + a[3] = 50; + document.writeln(`a[3]=${a[3]}<br>`); + + /* using foreach to iterate over elements (ignores undefined elements) */ + a.forEach(i => document.writeln(i)); + delete a[0]; + document.writeln("<br>After deleting<br>"); + a.forEach(i=> document.writeln(i)); + document.writeln(`<br>Length: ${a.length}<br>`); + + let removed = a.splice(0, 2); // first argument index, second number elements to remove + // if you don't provide second argument all elements are removed + // until the end of the array. + document.writeln(`array returned by splice: ${removed.join()}<br>`); + document.writeln(`original array after splice: ${a.join()}<br>`); + document.writeln(`original array length after splice: ${a.length}<br>`); + + </script> + </body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/EventsJSClassesCode/ArrayMethods2.html b/javascript_resources/code_examples/EventsJSClassesCode/ArrayMethods2.html new file mode 100755 index 0000000000000000000000000000000000000000..259062a8997d2ac3d40a08ed7d452906373f4805 --- /dev/null +++ b/javascript_resources/code_examples/EventsJSClassesCode/ArrayMethods2.html @@ -0,0 +1,60 @@ +<!doctype html> +<html lang="en"> + <head> + <title>Example</title> + <meta charset="utf-8" /> + </head> + + <body> + <script> + const tas = [ + {name: "John", course: "cmsc131", type:"full", hours: 4}, + {name: "Mary", course: "math106", type: "half", hours: 10}, + {name: "Laura", course: "psyc101", type:"full", hours: 3}, + {name: "Kelly", course: "cmsc131", type:"full", hours: 5}, + ]; + + /* forEach is a built-in array method; callback is called on each array element */ + tas.forEach(i => document.writeln(i.name + "<br>")); + + /* mapping - map each item of an array to a new item of new array based on the callback */ + /* We want to retrieve array of courses. */ + const allCourses = tas.map(ta => ta.course); + document.writeln(`TA courses: ${allCourses.join()}<br>`); + + /* Testing items in array */ + /* We want to identify whether all elements of an array satisfy a condition */ + /* every returns true if call back is true for all elements */ + const allFullType = tas.every(ta => ta.type === "full"); + document.writeln(`allFullType:${allFullType}<br>`); + + /* some will applies callback to each element until one is found to be true */ + const anypsyc101TA = tas.some(ta => ta.course === "psyc101"); + document.writeln(`anypsyc101TA:${anypsyc101TA}<br>`); + + /* finding first element in array that satifies condition; undefined returned if none found */ + const tacmsc131 = tas.find(ta => { return ta.name === "John"; }); + document.writeln(`Name: ${tacmsc131.name}, Type: ${tacmsc131.type}<br>`); + + /* filter returns array with items satisfying condition */ + const allcmsc131Tas = tas.filter(ta => ta.course === "cmsc131"); + document.writeln(`allcmsc131Tas:${allcmsc131Tas.map(ta => ta.name).join()}<br>`); + + /* indices */ + const laurasIndex = tas.findIndex(ta => ta.name === "Laura"); + document.writeln(`Laura\'s index ${laurasIndex}<br>`); + + /* visiting every element in the collection and aggregating some value to generate */ + /* a single value from the array */ + + const values = [2, 3, 9]; + const initialValue = 0; + /* reduce has two parameters: callback and initial value */ + const valuesSum = values.reduce((accumulated, curr) => accumulated + curr, initialValue); + document.writeln(`valuesSum:${valuesSum}<br>`); + + const totalHours = tas.reduce((accumulated, curr) => accumulated + curr.hours, initialValue); + document.writeln(`totalHours:${totalHours}<br>`); + </script> + </body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/EventsJSClassesCode/ClassDefinitionDeclaration.html b/javascript_resources/code_examples/EventsJSClassesCode/ClassDefinitionDeclaration.html new file mode 100755 index 0000000000000000000000000000000000000000..257df3a0f9f19306636ccfec1380149a1767f3b8 --- /dev/null +++ b/javascript_resources/code_examples/EventsJSClassesCode/ClassDefinitionDeclaration.html @@ -0,0 +1,50 @@ +<!doctype html> +<html> +<head> + <meta charset="utf-8" /> + <title>JS Example</title> +</head> + +<body> + <script> + "use strict"; + + class Student { + constructor(name, age) { + this.name = name; + this.age = age; + } + + toString() { + return this.name + " " + this.age; + } + + getName() { + return this.name; + } + + static getCollegeName() { + return "UMCP"; + } + } + + main(); + + function main() { + let s1 = new Student("Mary", 20); + let s2 = new Student("Peter", 30); + + document.writeln(s1 + "<br>"); + document.writeln(s2 + "<br>"); + + document.writeln("College Name: " + Student.getCollegeName() + "<br>"); + document.writeln("Student's name: " + s1.getName() + "<br>"); + s1.name = "CHANGED NAME"; + document.writeln("Student's name: " + s1.getName() + "<br>"); + + /* Student("Kyle", 40); */ /* Check console when commented out */ + } + </script> +</body> + +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/EventsJSClassesCode/ClassDefinitionExpression.html b/javascript_resources/code_examples/EventsJSClassesCode/ClassDefinitionExpression.html new file mode 100755 index 0000000000000000000000000000000000000000..780dd362cc1bd566a61dc336f77ab2863bce496b --- /dev/null +++ b/javascript_resources/code_examples/EventsJSClassesCode/ClassDefinitionExpression.html @@ -0,0 +1,39 @@ +<!doctype html> +<html> +<head> + <meta charset="utf-8" /> + <title>JS Example</title> +</head> + +<body> + <script> + "use strict"; + + main(); + + function main() { + let Student = class St { + constructor(studentsName, age) { + this.studentsName = studentsName; + this.age = age; + } + toString() { + return this.studentsName + " " + this.age; + } + + getNameOfClass() { + return St.name; + } + } + + let s1 = new Student("Michael", 101); + let s2 = new Student("Rose", 345); + + document.writeln(s1 + "<br>"); + document.writeln(s2 + "<br>"); + document.writeln("Class name: " + s1.getNameOfClass() + "<br>"); + } + </script> +</body> + +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/EventsJSClassesCode/ComputePropKeys.html b/javascript_resources/code_examples/EventsJSClassesCode/ComputePropKeys.html new file mode 100755 index 0000000000000000000000000000000000000000..c88a1cd20f23a0bb6141d2ae4c3b68a48bb49f06 --- /dev/null +++ b/javascript_resources/code_examples/EventsJSClassesCode/ComputePropKeys.html @@ -0,0 +1,24 @@ +<!doctype html> +<html> +<head> + <meta charset="utf-8" /> + <title>JS Example</title> +</head> + +<body> + <script> + "use strict"; + let part1 = 'camp', part2 = 'us'; + let preFunc = "getD", postFunc = "ata"; + + let student1 = { + id: 1, + [part1 + part2] : "UMCP", + [preFunc + postFunc]() { return [part1 + part2]; } + }; + + document.writeln("id: " + student1.id + ", campus: " + student1.campus + "<br>"); + document.writeln("Function: " + student1.getData() + "<br>"); + </script> +</body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/EventsJSClassesCode/EventPropagation.html b/javascript_resources/code_examples/EventsJSClassesCode/EventPropagation.html new file mode 100755 index 0000000000000000000000000000000000000000..2c8c2cb35d24d208737ac9e6dd232296e4ad6b2b --- /dev/null +++ b/javascript_resources/code_examples/EventsJSClassesCode/EventPropagation.html @@ -0,0 +1,32 @@ +<!doctype html> +<html lang="en"> + <head> + <title>Example</title> + <meta charset="utf-8" /> + </head> + + <body> + <div id="OuterElement"> + This text is part of the + outer element.<br><br><br> + <div id="InnerElement"> +   This text is part of the inner element.<br><br><br> + <div id="WayInnerElement"> +       This text is part of the way inner element :)<br><br><br> + </div> + </div> + </div> + <script> + /* In some event's model the listener is executed starting at the targeted element */ + /* and bubbling up the DOM tree. This is refered to as event bubbling. In other models */ + /* event handling starts with the top element trickling down the target element. This is referred to + /* as event capturing. W3 Consortium approach relies onhandling an event + /* in two phases: capturing phase (event first trickles down); bubbling phase (after target + /* element has been reached during the capturing phase the event bubbles up). */ + + document.getElementById("OuterElement").addEventListener("click", () => alert("OuterElement")); + document.getElementById("InnerElement").addEventListener("click", () => alert("InnerElement")); + document.getElementById("WayInnerElement").addEventListener("click", () => alert("WayInnerElement")); + </script> + </body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/EventsJSClassesCode/EventPropagationControlled.html b/javascript_resources/code_examples/EventsJSClassesCode/EventPropagationControlled.html new file mode 100755 index 0000000000000000000000000000000000000000..e4704227439dfff2f924d33710851546b7c3fe75 --- /dev/null +++ b/javascript_resources/code_examples/EventsJSClassesCode/EventPropagationControlled.html @@ -0,0 +1,27 @@ +<!doctype html> +<html lang="en"> + <head> + <title>Example</title> + <meta charset="utf-8" /> + </head> + + <body> + <div id="OuterElement"> + This text is part of the + outer element.<br><br><br> + <div id="InnerElement"> +   This text is part of the inner element.<br><br><br> + <div id="WayInnerElement"> +       This text is part of the way inner element :)<br><br><br> + </div> + </div> + </div> + <script> + /* We can control which event-handling order we want by using a boolean value in addEventLister. */ + /* If the value is false (or not present) bubbling will be used; otherwise capturing */ + document.getElementById("OuterElement").addEventListener("click", () => alert("OuterElement"), true); + document.getElementById("InnerElement").addEventListener("click", () => alert("InnerElement"), true); + document.getElementById("WayInnerElement").addEventListener("click", () => alert("WayInnerElement"), true); + </script> + </body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/EventsJSClassesCode/FunctionContextCorrecta.html b/javascript_resources/code_examples/EventsJSClassesCode/FunctionContextCorrecta.html new file mode 100755 index 0000000000000000000000000000000000000000..58bdc89d10862aadda9e9fa1ad1b11bc7cbcd2e6 --- /dev/null +++ b/javascript_resources/code_examples/EventsJSClassesCode/FunctionContextCorrecta.html @@ -0,0 +1,46 @@ +<!doctype html> +<html lang="en"> + <head> + <title>Example</title> + <meta charset="utf-8" /> + </head> + + <body> + <form> + <input type="button" id="testCustomType" value="TestCustomType"> + <input type="button" id="terpButton" value="TerpButton"> + <input type="button" id="checkState" value="CheckState"> + </form> + <div id="displayArea"></div> + + <script> + function displayMessage(message) { + document.getElementById("displayArea").innerHTML = message; + } + + function ButtonState() { + var self = this; /* instead of self we could have used that */ + self.clicked = false; + self.setClicked = function() { self.clicked = true; alert(`Button Selected: ${self.clicked}`);}; + self.getClicked = function() { return self.clicked; }; + } + + document.getElementById("testCustomType").addEventListener("click", function() { + const buttonState = new ButtonState(); + let output = `Initial Button State: ${buttonState.getClicked()}<br>`; + buttonState.setClicked(); + output += `After State Change: ${buttonState.getClicked()}<br>`; + displayMessage(output); + }); + + const terpButtonState = new ButtonState(); + /* Using above custom type to keep track of click state */ + document.getElementById("terpButton").addEventListener("click", terpButtonState.setClicked); + + /* displaying state of above ButtonState */ + document.getElementById("checkState").addEventListener("click", function() { + displayMessage("terpButtonState.getClicked(): " + terpButtonState.getClicked()); + }); + </script> + </body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/EventsJSClassesCode/FunctionContextCorrectb.html b/javascript_resources/code_examples/EventsJSClassesCode/FunctionContextCorrectb.html new file mode 100755 index 0000000000000000000000000000000000000000..bc38ecdc1b9266376e613247bb9284afa41270e2 --- /dev/null +++ b/javascript_resources/code_examples/EventsJSClassesCode/FunctionContextCorrectb.html @@ -0,0 +1,47 @@ +<!doctype html> +<html lang="en"> + <head> + <title>Example</title> + <meta charset="utf-8" /> + </head> + + <body> + <form> + <input type="button" id="testCustomType" value="TestCustomType"> + <input type="button" id="terpButton" value="TerpButton"> + <input type="button" id="checkState" value="CheckState"> + </form> + <div id="displayArea"></div> + + <script> + function displayMessage(message) { + document.getElementById("displayArea").innerHTML = message; + } + + function ButtonState() { + this.clicked = false; + /* Arrow functions do not have their own this reference; they remember */ + /* this parameter at the point they are defined */ + this.setClicked = () => { this.clicked = true; alert(`Button Selected: ${this.clicked}`);}; + this.getClicked = () => { return this.clicked; }; + } + + document.getElementById("testCustomType").addEventListener("click", function() { + const buttonState = new ButtonState(); + let output = `Initial Button State: ${buttonState.getClicked()}<br>`; + buttonState.setClicked(); + output += `After State Change: ${buttonState.getClicked()}<br>`; + displayMessage(output); + }); + + const terpButtonState = new ButtonState(); + /* Using above custom type to keep track of click state */ + document.getElementById("terpButton").addEventListener("click", terpButtonState.setClicked); + + /* displaying state of above ButtonState */ + document.getElementById("checkState").addEventListener("click", function() { + displayMessage("terpButtonState.getClicked(): " + terpButtonState.getClicked()); + }); + </script> + </body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/EventsJSClassesCode/FunctionContextCorrectc.html b/javascript_resources/code_examples/EventsJSClassesCode/FunctionContextCorrectc.html new file mode 100755 index 0000000000000000000000000000000000000000..19a58de5101cd3048cc34eb350eea0e61d2c97f6 --- /dev/null +++ b/javascript_resources/code_examples/EventsJSClassesCode/FunctionContextCorrectc.html @@ -0,0 +1,47 @@ +<!doctype html> +<html lang="en"> + <head> + <title>Example</title> + <meta charset="utf-8" /> + </head> + + <body> + <form> + <input type="button" id="testCustomType" value="TestCustomType"> + <input type="button" id="terpButton" value="TerpButton"> + <input type="button" id="checkState" value="CheckState"> + </form> + <div id="displayArea"></div> + + <script> + function displayMessage(message) { + document.getElementById("displayArea").innerHTML = message; + } + + function ButtonState() { + this.clicked = false; + this.setClicked = function() { this.clicked = true; alert(`Button Selected: ${this.clicked}`);}; + this.getClicked = function() { return this.clicked; }; + } + + document.getElementById("testCustomType").addEventListener("click", function() { + const buttonState = new ButtonState(); + let output = `Initial Button State: ${buttonState.getClicked()}<br>`; + buttonState.setClicked(); + output += `After State Change: ${buttonState.getClicked()}<br>`; + displayMessage(output); + }); + + const terpButtonState = new ButtonState(); + /* Using above custom type to keep track of click state */ + /* Using bind to define object to use */ + const setClickedBound = terpButtonState.setClicked.bind(terpButtonState); + document.getElementById("terpButton").addEventListener("click", setClickedBound); + + /* displaying state of above ButtonState */ + document.getElementById("checkState").addEventListener("click", function() { + displayMessage("terpButtonState.getClicked(): " + terpButtonState.getClicked()); + }); + </script> + </body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/EventsJSClassesCode/FunctionContextIncorrect.html b/javascript_resources/code_examples/EventsJSClassesCode/FunctionContextIncorrect.html new file mode 100755 index 0000000000000000000000000000000000000000..ec9e497f615ed24728e713170e2a3497dd31a28a --- /dev/null +++ b/javascript_resources/code_examples/EventsJSClassesCode/FunctionContextIncorrect.html @@ -0,0 +1,45 @@ +<!doctype html> +<html lang="en"> + <head> + <title>Example</title> + <meta charset="utf-8" /> + </head> + + <body> + <form> + <input type="button" id="testCustomType" value="TestCustomType"> + <input type="button" id="terpButton" value="TerpButton"> + <input type="button" id="checkState" value="CheckState"> + </form> + <div id="displayArea"></div> + + <script> + function displayMessage(message) { + document.getElementById("displayArea").innerHTML = message; + } + + function ButtonState() { + this.clicked = false; + this.setClicked = function() { this.clicked = true; alert(`Button Selected: ${this.clicked}`);}; + this.getClicked = function() { return this.clicked; }; + } + + document.getElementById("testCustomType").addEventListener("click", function() { + const buttonState = new ButtonState(); + let output = `Initial Button State: ${buttonState.getClicked()}<br>`; + buttonState.setClicked(); + output += `After State Change: ${buttonState.getClicked()}<br>`; + displayMessage(output); + }); + + const terpButtonState = new ButtonState(); + /* Using above custom type to keep track of click state */ + document.getElementById("terpButton").addEventListener("click", terpButtonState.setClicked); + + /* displaying state of above ButtonState */ + document.getElementById("checkState").addEventListener("click", function() { + displayMessage("terpButtonState.getClicked(): " + terpButtonState.getClicked()); + }); + </script> + </body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/EventsJSClassesCode/Generator1.html b/javascript_resources/code_examples/EventsJSClassesCode/Generator1.html new file mode 100755 index 0000000000000000000000000000000000000000..00d44fe2e41551908ebef57e7c0ed77345523dce --- /dev/null +++ b/javascript_resources/code_examples/EventsJSClassesCode/Generator1.html @@ -0,0 +1,32 @@ +<!doctype html> +<html> +<head> + <meta charset="utf-8" /> + <title>JS Example</title> +</head> + +<body> + <script> + function *numGenerator() { + document.writeln("In generator<br>"); + yield 10; + yield 20; + // return "Really Done"; /* What if you comment this out? *? + } + + let myGen = numGenerator(); + document.writeln("After creating generator<br>"); + + let entry = myGen.next(); + document.writeln(entry.value + ", " + entry.done + "<br>"); + + entry = myGen.next(); + document.writeln(entry.value + ", " + entry.done + "<br>"); + + entry = myGen.next(); + document.writeln(entry.value + ", " + entry.done + "<br>"); + + </script> +</body> + +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/EventsJSClassesCode/Generator2.html b/javascript_resources/code_examples/EventsJSClassesCode/Generator2.html new file mode 100755 index 0000000000000000000000000000000000000000..a219e6785e41a083cc778d34111d46836d15f586 --- /dev/null +++ b/javascript_resources/code_examples/EventsJSClassesCode/Generator2.html @@ -0,0 +1,30 @@ +<!doctype html> +<html> +<head> + <meta charset="utf-8" /> + <title>JS Example</title> +</head> + +<body> + <script> + function *oddNumGenerator(max) { + for (let i = 1; i <= max; i += 2) { + yield i; + } + } + + let myGen = oddNumGenerator(10); + + let entry = myGen.next(); + document.writeln(entry.value + ", " + entry.done + "<br>"); + + entry = myGen.next(); + document.writeln(entry.value + ", " + entry.done + "<br>"); + + entry = myGen.next(); + document.writeln(entry.value + ", " + entry.done + "<br>"); + + </script> +</body> + +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/EventsJSClassesCode/GeneratorInClass.html b/javascript_resources/code_examples/EventsJSClassesCode/GeneratorInClass.html new file mode 100755 index 0000000000000000000000000000000000000000..0f5d1462eee796e1d4b02617c642ad381d1df6f0 --- /dev/null +++ b/javascript_resources/code_examples/EventsJSClassesCode/GeneratorInClass.html @@ -0,0 +1,46 @@ +<!doctype html> +<html> +<head> + <meta charset="utf-8" /> + <title>JS Example</title> +</head> + +<body> + <script> + class SummerCourse { + constructor(name, credits) { + this.name = name; + this.credits = credits; + this.headTA = "Mary"; + this.grader = "Peter"; + } + + toString() { + return `${this.name}, ${this.credits}`; + } + + * taGenerator() { + document.writeln("Beginning of generator<br>"); + yield this.headTA; + yield this.grader; + } + + } + + let course = new SummerCourse("cmsc111", 4); + document.writeln(course + "<br>"); + + let generator = course.taGenerator(); + let ta = generator.next(); + document.writeln(ta.value + ", " + ta.done + "<br>"); + + ta = generator.next(); + document.writeln(ta.value + ", " + ta.done + "<br>"); + + ta = generator.next(); + document.writeln(ta.value + ", " + ta.done + "<br>"); + + </script> +</body> + +</html> \ No newline at end of file diff --git a/389N_stuff/code_examples/WebServicesPromisesCode/ImmediatelyInvokedFunctionExpression.html b/javascript_resources/code_examples/EventsJSClassesCode/ImmediatelyInvokedFunctionExpression.html similarity index 100% rename from 389N_stuff/code_examples/WebServicesPromisesCode/ImmediatelyInvokedFunctionExpression.html rename to javascript_resources/code_examples/EventsJSClassesCode/ImmediatelyInvokedFunctionExpression.html diff --git a/javascript_resources/code_examples/EventsJSClassesCode/Iterable1.html b/javascript_resources/code_examples/EventsJSClassesCode/Iterable1.html new file mode 100755 index 0000000000000000000000000000000000000000..f7bb8be26f2c1ffbf1a2f28d19b06eddff8c5f71 --- /dev/null +++ b/javascript_resources/code_examples/EventsJSClassesCode/Iterable1.html @@ -0,0 +1,24 @@ +<!doctype html> +<html> +<head> + <meta charset="utf-8" /> + <title>JS Example</title> +</head> + +<body> + <script> + "use strict"; + + let message = "Fear the turtle"; + for (let char of message) { + document.writeln(char + "<br>"); + } + + // Accessing the iterator + document.writeln("Accessing iterator<br>"); + let strIterator = message[Symbol.iterator](); + document.writeln(strIterator.next().value); + </script> +</body> + +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/EventsJSClassesCode/Iterable2.html b/javascript_resources/code_examples/EventsJSClassesCode/Iterable2.html new file mode 100755 index 0000000000000000000000000000000000000000..33842204427cfc0206ce5979581359fdf35e4f08 --- /dev/null +++ b/javascript_resources/code_examples/EventsJSClassesCode/Iterable2.html @@ -0,0 +1,38 @@ +<!doctype html> +<html> +<head> + <meta charset="utf-8" /> + <title>JS Example</title> +</head> + +<body> + <script> + class SummerCourse { + constructor(name, credits) { + this.name = name; + this.credits = credits; + this.headTA = "Mary"; + this.grader = "Peter"; + } + + toString() { + return `${this.name}, ${this.credits}`; + } + + * [Symbol.iterator]() { + yield this.headTA; + yield this.grader; + } + + } + + let course = new SummerCourse("psyc200", 3); + document.writeln(course + "<br>"); + + for (let ta of course) { + document.writeln(ta + "<br>"); + } + </script> +</body> + +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/EventsJSClassesCode/MethodDefinitions.html b/javascript_resources/code_examples/EventsJSClassesCode/MethodDefinitions.html new file mode 100755 index 0000000000000000000000000000000000000000..0c1fc1a10cd9d7428092054bcf3d9de41fa5097b --- /dev/null +++ b/javascript_resources/code_examples/EventsJSClassesCode/MethodDefinitions.html @@ -0,0 +1,29 @@ +<!doctype html> +<html> +<head> + <meta charset="utf-8" /> + <title>JS Example</title> +</head> + +<body> + <script> + "use strict"; + + let doctor = { + printSpecialty: function() { + document.writeln("heart<br>"); + }, + + /* not using function */ + printDailySchedule(patients, minutes) { + document.writeln("Total time: " + patients * minutes + "<br>"); + } + } + + doctor.printSpecialty(); + doctor.printDailySchedule(10, 20); + + </script> +</body> + +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/EventsJSClassesCode/ObjectMethods.html b/javascript_resources/code_examples/EventsJSClassesCode/ObjectMethods.html new file mode 100755 index 0000000000000000000000000000000000000000..7318b9c29a009f30d8b1a522d09663c3965cbe70 --- /dev/null +++ b/javascript_resources/code_examples/EventsJSClassesCode/ObjectMethods.html @@ -0,0 +1,33 @@ +<!doctype html> +<html> +<head> + <meta charset="utf-8" /> + <title>JS Example</title> +</head> + +<body> + <script> + "use strict"; + + let personsInfo = { name: "Bob", age:24 }; + let personsCourses = { course1: "ENGL101", course2: "PSYC100"}; + let combined = Object.assign(personsInfo, personsCourses); + + /* Notice use of for in */ + for (let key in combined) { + document.writeln(key + ": " + combined[key] + "<br>"); + } + + let student1 = { name: "Tom" }; + let student2 = { name: "Mary" }; + let student3 = { name: "Tom" }; + + document.writeln("Object.is(NaN, NaN): " + Object.is(NaN, NaN) + "<br>"); + document.writeln("Object.is(student1, student2): " + Object.is(student1, student2) + "<br>"); + document.writeln("Object.is(student1, student3): " + Object.is(student1, student3) + "<br>"); + document.writeln("Object.is(student1, student1): " + Object.is(student1, student1) + "<br>"); + + </script> +</body> + +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/EventsJSClassesCode/Private.html b/javascript_resources/code_examples/EventsJSClassesCode/Private.html new file mode 100755 index 0000000000000000000000000000000000000000..b9ab6f221ec04f20912227892f1b512916e3be4b --- /dev/null +++ b/javascript_resources/code_examples/EventsJSClassesCode/Private.html @@ -0,0 +1,58 @@ +<!doctype html> +<html> +<head> + <meta charset="utf-8" /> + <title>JS Example</title> +</head> + +<body> + <script> + "use strict"; + + /* We need to keep these WeakMaps hidden */ + const _name = new WeakMap(); + const _age = new WeakMap(); + + class Student { + constructor(name, age) { + _name.set(this, name); + _age.set(this, age); + } + + toString() { + return _name.get(this) + " " + _age.get(this); + } + + getName() { + return _name.get(this); + } + + getAge() { + return _age.get(this); + } + + static getCollegeName() { + return "UMCP"; + } + } + + main(); + + function main() { + let s1 = new Student("Charles", 20); + let s2 = new Student("Elizabeth", 30); + + document.writeln(s1 + "<br>"); + document.writeln(s2 + "<br>"); + + document.writeln("College Name: " + Student.getCollegeName() + "<br>"); + document.writeln("Student's name: " + s1.getName() + "<br>"); + + document.writeln(_name); + + /* Student("Kyle", 40); */ /* Check console when commented out */ + } + </script> +</body> + +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/EventsJSClassesCode/SetMethods.html b/javascript_resources/code_examples/EventsJSClassesCode/SetMethods.html new file mode 100755 index 0000000000000000000000000000000000000000..8072367a8916b325cc5a6536c6b39adf58f119a7 --- /dev/null +++ b/javascript_resources/code_examples/EventsJSClassesCode/SetMethods.html @@ -0,0 +1,37 @@ +<!doctype html> +<html lang="en"> + <head> + <title>Example</title> + <meta charset="utf-8" /> + </head> + + <body> + <script> + const tas106 = ["John", "Mary", "Laura", "Kelly", "Bob"]; + const tas131 = ["Mary", "Rose", "Bob"]; + + /* Creating set out of array */ + const set106 = new Set(tas106); + for (let elem of set106) { + document.writeln(elem); + } + const set131 = new Set(tas131); + + /* Set union using spread operator to create new array */ + const allTAs = new Set([...set106, ...set131]); + document.writeln("<br>Union (allTAs)<br>"); + for (let elem of allTAs) { + document.writeln(elem + "<br>"); + } + + /* Intersection */ + const inBothCourses = new Set([...set131].filter(ta131 => set106.has(ta131))); + document.writeln("Intersection: " + [...inBothCourses].join() + "<br>"); + + /* Difference */ + document.writeln("106tas that are not 131tas<br>"); + const difference = new Set([...set106].filter(ta106 => !set131.has(ta106))); + document.writeln("Difference: " + [...difference].join() + "<br>"); + </script> + </body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/EventsJSClassesCode/Spread.html b/javascript_resources/code_examples/EventsJSClassesCode/Spread.html new file mode 100755 index 0000000000000000000000000000000000000000..909f31f3e7f9c357991c52fe8c8d0870954d7e5d --- /dev/null +++ b/javascript_resources/code_examples/EventsJSClassesCode/Spread.html @@ -0,0 +1,30 @@ +<!doctype html> +<html> +<head> + <meta charset="utf-8" /> + <title>JS Example</title> +</head> + +<body> + <script> + "use strict"; + + let courses = new Map(); + courses.set("cmsc122", 3); + courses.set("cmsc216", 4); + + for (let entry of courses) { + document.writeln(entry + "<br>"); + } + + document.writeln("After converting to array<br>"); + let arrayCourses = [...courses]; + for (let i = 0; i < arrayCourses.length; i++) { + document.writeln("entry: " + i + "-->", arrayCourses[i] + "<br>"); + } + + + </script> +</body> + +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/EventsJSClassesCode/Subclass.html b/javascript_resources/code_examples/EventsJSClassesCode/Subclass.html new file mode 100755 index 0000000000000000000000000000000000000000..8411236a3c6c42fbd0e86f38f525a522a2dfa8f5 --- /dev/null +++ b/javascript_resources/code_examples/EventsJSClassesCode/Subclass.html @@ -0,0 +1,52 @@ +<!doctype html> +<html> +<head> + <meta charset="utf-8" /> + <title>JS Example</title> +</head> + +<body> + <script> + "use strict"; + + class Student { + constructor(name, age) { + this.name = name; + this.age = age; + } + + toString() { + return this.name + " " + this.age; + } + + getName() { + return this.name; + } + + static getCollegeName() { + return "UMCP"; + } + } + + class StudentAthlete extends Student { + constructor(name, age, sport) { + super(name, age); + this.sport = sport; + } + + toString() { + return super.toString() + " " + this.sport; + } + } + main(); + + function main() { + let athlete1 = new StudentAthlete("Robert", 578, "Programming"); + + document.writeln("Athlete: " + athlete1 + "<br>"); + document.writeln("College: " + StudentAthlete.getCollegeName() + "<br>"); + } + </script> +</body> + +</html> \ No newline at end of file diff --git a/389N_stuff/code_examples/ExpressCode/examples/Testudo3.jpg b/javascript_resources/code_examples/ExpressCode/examples/Testudo3.jpg similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/Testudo3.jpg rename to javascript_resources/code_examples/ExpressCode/examples/Testudo3.jpg diff --git a/389N_stuff/code_examples/ExpressCode/examples/additionalFunc.js b/javascript_resources/code_examples/ExpressCode/examples/additionalFunc.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/additionalFunc.js rename to javascript_resources/code_examples/ExpressCode/examples/additionalFunc.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/dynamicHTML.js b/javascript_resources/code_examples/ExpressCode/examples/dynamicHTML.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/dynamicHTML.js rename to javascript_resources/code_examples/ExpressCode/examples/dynamicHTML.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/example1.js b/javascript_resources/code_examples/ExpressCode/examples/example1.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/example1.js rename to javascript_resources/code_examples/ExpressCode/examples/example1.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/formGet.html b/javascript_resources/code_examples/ExpressCode/examples/formGet.html similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/formGet.html rename to javascript_resources/code_examples/ExpressCode/examples/formGet.html diff --git a/389N_stuff/code_examples/ExpressCode/examples/formPost.html b/javascript_resources/code_examples/ExpressCode/examples/formPost.html similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/formPost.html rename to javascript_resources/code_examples/ExpressCode/examples/formPost.html diff --git a/389N_stuff/code_examples/ExpressCode/examples/httpMethods.js b/javascript_resources/code_examples/ExpressCode/examples/httpMethods.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/httpMethods.js rename to javascript_resources/code_examples/ExpressCode/examples/httpMethods.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/loggingHTML.js b/javascript_resources/code_examples/ExpressCode/examples/loggingHTML.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/loggingHTML.js rename to javascript_resources/code_examples/ExpressCode/examples/loggingHTML.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/middleware.js b/javascript_resources/code_examples/ExpressCode/examples/middleware.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/middleware.js rename to javascript_resources/code_examples/ExpressCode/examples/middleware.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/.bin/mime b/javascript_resources/code_examples/ExpressCode/examples/node_modules/.bin/mime similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/.bin/mime rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/.bin/mime diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/.bin/mime.cmd b/javascript_resources/code_examples/ExpressCode/examples/node_modules/.bin/mime.cmd similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/.bin/mime.cmd rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/.bin/mime.cmd diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/accepts/HISTORY.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/accepts/HISTORY.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/accepts/HISTORY.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/accepts/HISTORY.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/accepts/LICENSE b/javascript_resources/code_examples/ExpressCode/examples/node_modules/accepts/LICENSE similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/accepts/LICENSE rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/accepts/LICENSE diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/accepts/README.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/accepts/README.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/accepts/README.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/accepts/README.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/accepts/index.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/accepts/index.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/accepts/index.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/accepts/index.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/accepts/package.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/accepts/package.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/accepts/package.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/accepts/package.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/array-flatten/LICENSE b/javascript_resources/code_examples/ExpressCode/examples/node_modules/array-flatten/LICENSE similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/array-flatten/LICENSE rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/array-flatten/LICENSE diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/array-flatten/README.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/array-flatten/README.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/array-flatten/README.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/array-flatten/README.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/array-flatten/array-flatten.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/array-flatten/array-flatten.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/array-flatten/array-flatten.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/array-flatten/array-flatten.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/array-flatten/package.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/array-flatten/package.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/array-flatten/package.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/array-flatten/package.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/basic-auth/HISTORY.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/basic-auth/HISTORY.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/basic-auth/HISTORY.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/basic-auth/HISTORY.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/basic-auth/LICENSE b/javascript_resources/code_examples/ExpressCode/examples/node_modules/basic-auth/LICENSE similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/basic-auth/LICENSE rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/basic-auth/LICENSE diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/basic-auth/README.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/basic-auth/README.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/basic-auth/README.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/basic-auth/README.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/basic-auth/index.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/basic-auth/index.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/basic-auth/index.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/basic-auth/index.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/basic-auth/package.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/basic-auth/package.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/basic-auth/package.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/basic-auth/package.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/body-parser/HISTORY.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/body-parser/HISTORY.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/body-parser/HISTORY.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/body-parser/HISTORY.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/body-parser/LICENSE b/javascript_resources/code_examples/ExpressCode/examples/node_modules/body-parser/LICENSE similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/body-parser/LICENSE rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/body-parser/LICENSE diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/body-parser/README.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/body-parser/README.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/body-parser/README.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/body-parser/README.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/body-parser/index.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/body-parser/index.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/body-parser/index.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/body-parser/index.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/body-parser/lib/read.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/body-parser/lib/read.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/body-parser/lib/read.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/body-parser/lib/read.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/body-parser/lib/types/json.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/body-parser/lib/types/json.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/body-parser/lib/types/json.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/body-parser/lib/types/json.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/body-parser/lib/types/raw.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/body-parser/lib/types/raw.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/body-parser/lib/types/raw.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/body-parser/lib/types/raw.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/body-parser/lib/types/text.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/body-parser/lib/types/text.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/body-parser/lib/types/text.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/body-parser/lib/types/text.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/body-parser/lib/types/urlencoded.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/body-parser/lib/types/urlencoded.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/body-parser/lib/types/urlencoded.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/body-parser/lib/types/urlencoded.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/body-parser/package.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/body-parser/package.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/body-parser/package.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/body-parser/package.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/bytes/History.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/bytes/History.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/bytes/History.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/bytes/History.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/bytes/LICENSE b/javascript_resources/code_examples/ExpressCode/examples/node_modules/bytes/LICENSE similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/bytes/LICENSE rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/bytes/LICENSE diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/bytes/Readme.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/bytes/Readme.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/bytes/Readme.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/bytes/Readme.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/bytes/index.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/bytes/index.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/bytes/index.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/bytes/index.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/bytes/package.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/bytes/package.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/bytes/package.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/bytes/package.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/content-disposition/HISTORY.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/content-disposition/HISTORY.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/content-disposition/HISTORY.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/content-disposition/HISTORY.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/content-disposition/LICENSE b/javascript_resources/code_examples/ExpressCode/examples/node_modules/content-disposition/LICENSE similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/content-disposition/LICENSE rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/content-disposition/LICENSE diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/content-disposition/README.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/content-disposition/README.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/content-disposition/README.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/content-disposition/README.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/content-disposition/index.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/content-disposition/index.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/content-disposition/index.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/content-disposition/index.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/content-disposition/package.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/content-disposition/package.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/content-disposition/package.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/content-disposition/package.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/content-type/HISTORY.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/content-type/HISTORY.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/content-type/HISTORY.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/content-type/HISTORY.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/content-type/LICENSE b/javascript_resources/code_examples/ExpressCode/examples/node_modules/content-type/LICENSE similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/content-type/LICENSE rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/content-type/LICENSE diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/content-type/README.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/content-type/README.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/content-type/README.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/content-type/README.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/content-type/index.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/content-type/index.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/content-type/index.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/content-type/index.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/content-type/package.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/content-type/package.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/content-type/package.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/content-type/package.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/cookie-signature/.npmignore b/javascript_resources/code_examples/ExpressCode/examples/node_modules/cookie-signature/.npmignore similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/cookie-signature/.npmignore rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/cookie-signature/.npmignore diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/cookie-signature/History.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/cookie-signature/History.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/cookie-signature/History.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/cookie-signature/History.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/cookie-signature/Readme.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/cookie-signature/Readme.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/cookie-signature/Readme.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/cookie-signature/Readme.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/cookie-signature/index.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/cookie-signature/index.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/cookie-signature/index.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/cookie-signature/index.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/cookie-signature/package.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/cookie-signature/package.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/cookie-signature/package.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/cookie-signature/package.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/cookie/HISTORY.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/cookie/HISTORY.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/cookie/HISTORY.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/cookie/HISTORY.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/cookie/LICENSE b/javascript_resources/code_examples/ExpressCode/examples/node_modules/cookie/LICENSE similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/cookie/LICENSE rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/cookie/LICENSE diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/cookie/README.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/cookie/README.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/cookie/README.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/cookie/README.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/cookie/index.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/cookie/index.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/cookie/index.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/cookie/index.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/cookie/package.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/cookie/package.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/cookie/package.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/cookie/package.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/debug/.coveralls.yml b/javascript_resources/code_examples/ExpressCode/examples/node_modules/debug/.coveralls.yml similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/debug/.coveralls.yml rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/debug/.coveralls.yml diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/debug/.eslintrc b/javascript_resources/code_examples/ExpressCode/examples/node_modules/debug/.eslintrc similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/debug/.eslintrc rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/debug/.eslintrc diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/debug/.npmignore b/javascript_resources/code_examples/ExpressCode/examples/node_modules/debug/.npmignore similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/debug/.npmignore rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/debug/.npmignore diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/debug/.travis.yml b/javascript_resources/code_examples/ExpressCode/examples/node_modules/debug/.travis.yml similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/debug/.travis.yml rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/debug/.travis.yml diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/debug/CHANGELOG.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/debug/CHANGELOG.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/debug/CHANGELOG.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/debug/CHANGELOG.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/debug/LICENSE b/javascript_resources/code_examples/ExpressCode/examples/node_modules/debug/LICENSE similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/debug/LICENSE rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/debug/LICENSE diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/debug/Makefile b/javascript_resources/code_examples/ExpressCode/examples/node_modules/debug/Makefile similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/debug/Makefile rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/debug/Makefile diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/debug/README.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/debug/README.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/debug/README.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/debug/README.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/debug/component.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/debug/component.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/debug/component.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/debug/component.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/debug/karma.conf.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/debug/karma.conf.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/debug/karma.conf.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/debug/karma.conf.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/debug/node.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/debug/node.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/debug/node.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/debug/node.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/debug/package.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/debug/package.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/debug/package.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/debug/package.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/debug/src/browser.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/debug/src/browser.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/debug/src/browser.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/debug/src/browser.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/debug/src/debug.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/debug/src/debug.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/debug/src/debug.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/debug/src/debug.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/debug/src/index.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/debug/src/index.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/debug/src/index.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/debug/src/index.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/debug/src/inspector-log.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/debug/src/inspector-log.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/debug/src/inspector-log.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/debug/src/inspector-log.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/debug/src/node.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/debug/src/node.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/debug/src/node.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/debug/src/node.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/depd/History.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/depd/History.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/depd/History.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/depd/History.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/depd/LICENSE b/javascript_resources/code_examples/ExpressCode/examples/node_modules/depd/LICENSE similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/depd/LICENSE rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/depd/LICENSE diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/depd/Readme.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/depd/Readme.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/depd/Readme.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/depd/Readme.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/depd/index.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/depd/index.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/depd/index.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/depd/index.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/depd/lib/browser/index.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/depd/lib/browser/index.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/depd/lib/browser/index.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/depd/lib/browser/index.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/depd/lib/compat/callsite-tostring.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/depd/lib/compat/callsite-tostring.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/depd/lib/compat/callsite-tostring.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/depd/lib/compat/callsite-tostring.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/depd/lib/compat/event-listener-count.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/depd/lib/compat/event-listener-count.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/depd/lib/compat/event-listener-count.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/depd/lib/compat/event-listener-count.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/depd/lib/compat/index.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/depd/lib/compat/index.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/depd/lib/compat/index.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/depd/lib/compat/index.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/depd/package.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/depd/package.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/depd/package.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/depd/package.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/destroy/LICENSE b/javascript_resources/code_examples/ExpressCode/examples/node_modules/destroy/LICENSE similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/destroy/LICENSE rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/destroy/LICENSE diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/destroy/README.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/destroy/README.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/destroy/README.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/destroy/README.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/destroy/index.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/destroy/index.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/destroy/index.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/destroy/index.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/destroy/package.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/destroy/package.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/destroy/package.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/destroy/package.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/ee-first/LICENSE b/javascript_resources/code_examples/ExpressCode/examples/node_modules/ee-first/LICENSE similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/ee-first/LICENSE rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/ee-first/LICENSE diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/ee-first/README.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/ee-first/README.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/ee-first/README.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/ee-first/README.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/ee-first/index.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/ee-first/index.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/ee-first/index.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/ee-first/index.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/ee-first/package.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/ee-first/package.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/ee-first/package.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/ee-first/package.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/ejs/Jakefile b/javascript_resources/code_examples/ExpressCode/examples/node_modules/ejs/Jakefile similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/ejs/Jakefile rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/ejs/Jakefile diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/ejs/LICENSE b/javascript_resources/code_examples/ExpressCode/examples/node_modules/ejs/LICENSE similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/ejs/LICENSE rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/ejs/LICENSE diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/ejs/README.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/ejs/README.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/ejs/README.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/ejs/README.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/ejs/ejs.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/ejs/ejs.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/ejs/ejs.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/ejs/ejs.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/ejs/ejs.min.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/ejs/ejs.min.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/ejs/ejs.min.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/ejs/ejs.min.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/ejs/lib/ejs.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/ejs/lib/ejs.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/ejs/lib/ejs.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/ejs/lib/ejs.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/ejs/lib/utils.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/ejs/lib/utils.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/ejs/lib/utils.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/ejs/lib/utils.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/ejs/package.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/ejs/package.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/ejs/package.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/ejs/package.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/encodeurl/HISTORY.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/encodeurl/HISTORY.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/encodeurl/HISTORY.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/encodeurl/HISTORY.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/encodeurl/LICENSE b/javascript_resources/code_examples/ExpressCode/examples/node_modules/encodeurl/LICENSE similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/encodeurl/LICENSE rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/encodeurl/LICENSE diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/encodeurl/README.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/encodeurl/README.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/encodeurl/README.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/encodeurl/README.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/encodeurl/index.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/encodeurl/index.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/encodeurl/index.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/encodeurl/index.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/encodeurl/package.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/encodeurl/package.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/encodeurl/package.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/encodeurl/package.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/escape-html/LICENSE b/javascript_resources/code_examples/ExpressCode/examples/node_modules/escape-html/LICENSE similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/escape-html/LICENSE rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/escape-html/LICENSE diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/escape-html/Readme.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/escape-html/Readme.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/escape-html/Readme.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/escape-html/Readme.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/escape-html/index.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/escape-html/index.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/escape-html/index.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/escape-html/index.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/escape-html/package.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/escape-html/package.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/escape-html/package.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/escape-html/package.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/etag/HISTORY.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/etag/HISTORY.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/etag/HISTORY.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/etag/HISTORY.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/etag/LICENSE b/javascript_resources/code_examples/ExpressCode/examples/node_modules/etag/LICENSE similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/etag/LICENSE rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/etag/LICENSE diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/etag/README.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/etag/README.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/etag/README.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/etag/README.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/etag/index.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/etag/index.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/etag/index.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/etag/index.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/etag/package.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/etag/package.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/etag/package.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/etag/package.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/express/History.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/express/History.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/express/History.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/express/History.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/express/LICENSE b/javascript_resources/code_examples/ExpressCode/examples/node_modules/express/LICENSE similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/express/LICENSE rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/express/LICENSE diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/express/Readme.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/express/Readme.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/express/Readme.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/express/Readme.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/express/index.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/express/index.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/express/index.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/express/index.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/express/lib/application.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/express/lib/application.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/express/lib/application.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/express/lib/application.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/express/lib/express.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/express/lib/express.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/express/lib/express.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/express/lib/express.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/express/lib/middleware/init.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/express/lib/middleware/init.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/express/lib/middleware/init.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/express/lib/middleware/init.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/express/lib/middleware/query.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/express/lib/middleware/query.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/express/lib/middleware/query.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/express/lib/middleware/query.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/express/lib/request.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/express/lib/request.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/express/lib/request.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/express/lib/request.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/express/lib/response.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/express/lib/response.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/express/lib/response.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/express/lib/response.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/express/lib/router/index.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/express/lib/router/index.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/express/lib/router/index.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/express/lib/router/index.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/express/lib/router/layer.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/express/lib/router/layer.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/express/lib/router/layer.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/express/lib/router/layer.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/express/lib/router/route.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/express/lib/router/route.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/express/lib/router/route.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/express/lib/router/route.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/express/lib/utils.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/express/lib/utils.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/express/lib/utils.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/express/lib/utils.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/express/lib/view.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/express/lib/view.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/express/lib/view.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/express/lib/view.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/express/package.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/express/package.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/express/package.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/express/package.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/finalhandler/HISTORY.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/finalhandler/HISTORY.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/finalhandler/HISTORY.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/finalhandler/HISTORY.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/finalhandler/LICENSE b/javascript_resources/code_examples/ExpressCode/examples/node_modules/finalhandler/LICENSE similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/finalhandler/LICENSE rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/finalhandler/LICENSE diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/finalhandler/README.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/finalhandler/README.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/finalhandler/README.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/finalhandler/README.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/finalhandler/index.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/finalhandler/index.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/finalhandler/index.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/finalhandler/index.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/finalhandler/package.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/finalhandler/package.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/finalhandler/package.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/finalhandler/package.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/forwarded/HISTORY.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/forwarded/HISTORY.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/forwarded/HISTORY.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/forwarded/HISTORY.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/forwarded/LICENSE b/javascript_resources/code_examples/ExpressCode/examples/node_modules/forwarded/LICENSE similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/forwarded/LICENSE rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/forwarded/LICENSE diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/forwarded/README.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/forwarded/README.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/forwarded/README.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/forwarded/README.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/forwarded/index.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/forwarded/index.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/forwarded/index.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/forwarded/index.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/forwarded/package.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/forwarded/package.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/forwarded/package.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/forwarded/package.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/fresh/HISTORY.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/fresh/HISTORY.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/fresh/HISTORY.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/fresh/HISTORY.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/fresh/LICENSE b/javascript_resources/code_examples/ExpressCode/examples/node_modules/fresh/LICENSE similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/fresh/LICENSE rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/fresh/LICENSE diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/fresh/README.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/fresh/README.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/fresh/README.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/fresh/README.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/fresh/index.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/fresh/index.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/fresh/index.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/fresh/index.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/fresh/package.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/fresh/package.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/fresh/package.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/fresh/package.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/http-errors/HISTORY.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/http-errors/HISTORY.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/http-errors/HISTORY.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/http-errors/HISTORY.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/http-errors/LICENSE b/javascript_resources/code_examples/ExpressCode/examples/node_modules/http-errors/LICENSE similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/http-errors/LICENSE rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/http-errors/LICENSE diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/http-errors/README.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/http-errors/README.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/http-errors/README.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/http-errors/README.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/http-errors/index.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/http-errors/index.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/http-errors/index.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/http-errors/index.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/http-errors/node_modules/setprototypeof/LICENSE b/javascript_resources/code_examples/ExpressCode/examples/node_modules/http-errors/node_modules/setprototypeof/LICENSE similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/http-errors/node_modules/setprototypeof/LICENSE rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/http-errors/node_modules/setprototypeof/LICENSE diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/http-errors/node_modules/setprototypeof/README.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/http-errors/node_modules/setprototypeof/README.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/http-errors/node_modules/setprototypeof/README.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/http-errors/node_modules/setprototypeof/README.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/http-errors/node_modules/setprototypeof/index.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/http-errors/node_modules/setprototypeof/index.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/http-errors/node_modules/setprototypeof/index.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/http-errors/node_modules/setprototypeof/index.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/http-errors/node_modules/setprototypeof/package.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/http-errors/node_modules/setprototypeof/package.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/http-errors/node_modules/setprototypeof/package.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/http-errors/node_modules/setprototypeof/package.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/http-errors/package.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/http-errors/package.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/http-errors/package.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/http-errors/package.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/.npmignore b/javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/.npmignore similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/.npmignore rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/.npmignore diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/.travis.yml b/javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/.travis.yml similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/.travis.yml rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/.travis.yml diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/Changelog.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/Changelog.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/Changelog.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/Changelog.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/LICENSE b/javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/LICENSE similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/LICENSE rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/LICENSE diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/README.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/README.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/README.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/README.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/dbcs-codec.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/dbcs-codec.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/dbcs-codec.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/dbcs-codec.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/dbcs-data.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/dbcs-data.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/dbcs-data.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/dbcs-data.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/index.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/index.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/index.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/index.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/internal.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/internal.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/internal.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/internal.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/sbcs-codec.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/sbcs-codec.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/sbcs-codec.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/sbcs-codec.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/sbcs-data-generated.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/sbcs-data-generated.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/sbcs-data-generated.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/sbcs-data-generated.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/sbcs-data.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/sbcs-data.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/sbcs-data.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/sbcs-data.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/tables/big5-added.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/tables/big5-added.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/tables/big5-added.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/tables/big5-added.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/tables/cp936.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/tables/cp936.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/tables/cp936.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/tables/cp936.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/tables/cp949.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/tables/cp949.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/tables/cp949.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/tables/cp949.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/tables/cp950.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/tables/cp950.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/tables/cp950.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/tables/cp950.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/tables/eucjp.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/tables/eucjp.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/tables/eucjp.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/tables/eucjp.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/tables/gb18030-ranges.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/tables/gb18030-ranges.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/tables/gb18030-ranges.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/tables/gb18030-ranges.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/tables/gbk-added.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/tables/gbk-added.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/tables/gbk-added.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/tables/gbk-added.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/tables/shiftjis.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/tables/shiftjis.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/tables/shiftjis.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/tables/shiftjis.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/utf16.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/utf16.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/utf16.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/utf16.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/utf7.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/utf7.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/utf7.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/encodings/utf7.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/lib/bom-handling.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/lib/bom-handling.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/lib/bom-handling.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/lib/bom-handling.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/lib/extend-node.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/lib/extend-node.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/lib/extend-node.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/lib/extend-node.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/lib/index.d.ts b/javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/lib/index.d.ts similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/lib/index.d.ts rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/lib/index.d.ts diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/lib/index.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/lib/index.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/lib/index.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/lib/index.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/lib/streams.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/lib/streams.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/lib/streams.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/lib/streams.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/package.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/package.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/iconv-lite/package.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/iconv-lite/package.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/inherits/LICENSE b/javascript_resources/code_examples/ExpressCode/examples/node_modules/inherits/LICENSE similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/inherits/LICENSE rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/inherits/LICENSE diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/inherits/README.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/inherits/README.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/inherits/README.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/inherits/README.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/inherits/inherits.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/inherits/inherits.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/inherits/inherits.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/inherits/inherits.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/inherits/inherits_browser.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/inherits/inherits_browser.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/inherits/inherits_browser.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/inherits/inherits_browser.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/inherits/package.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/inherits/package.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/inherits/package.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/inherits/package.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/ipaddr.js/.npmignore b/javascript_resources/code_examples/ExpressCode/examples/node_modules/ipaddr.js/.npmignore similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/ipaddr.js/.npmignore rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/ipaddr.js/.npmignore diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/ipaddr.js/.travis.yml b/javascript_resources/code_examples/ExpressCode/examples/node_modules/ipaddr.js/.travis.yml similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/ipaddr.js/.travis.yml rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/ipaddr.js/.travis.yml diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/ipaddr.js/Cakefile b/javascript_resources/code_examples/ExpressCode/examples/node_modules/ipaddr.js/Cakefile similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/ipaddr.js/Cakefile rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/ipaddr.js/Cakefile diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/ipaddr.js/LICENSE b/javascript_resources/code_examples/ExpressCode/examples/node_modules/ipaddr.js/LICENSE similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/ipaddr.js/LICENSE rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/ipaddr.js/LICENSE diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/ipaddr.js/README.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/ipaddr.js/README.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/ipaddr.js/README.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/ipaddr.js/README.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/ipaddr.js/bower.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/ipaddr.js/bower.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/ipaddr.js/bower.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/ipaddr.js/bower.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/ipaddr.js/ipaddr.min.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/ipaddr.js/ipaddr.min.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/ipaddr.js/ipaddr.min.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/ipaddr.js/ipaddr.min.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/ipaddr.js/lib/ipaddr.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/ipaddr.js/lib/ipaddr.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/ipaddr.js/lib/ipaddr.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/ipaddr.js/lib/ipaddr.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/ipaddr.js/package.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/ipaddr.js/package.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/ipaddr.js/package.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/ipaddr.js/package.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/ipaddr.js/src/ipaddr.coffee b/javascript_resources/code_examples/ExpressCode/examples/node_modules/ipaddr.js/src/ipaddr.coffee similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/ipaddr.js/src/ipaddr.coffee rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/ipaddr.js/src/ipaddr.coffee diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/ipaddr.js/test/ipaddr.test.coffee b/javascript_resources/code_examples/ExpressCode/examples/node_modules/ipaddr.js/test/ipaddr.test.coffee similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/ipaddr.js/test/ipaddr.test.coffee rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/ipaddr.js/test/ipaddr.test.coffee diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/media-typer/HISTORY.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/media-typer/HISTORY.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/media-typer/HISTORY.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/media-typer/HISTORY.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/media-typer/LICENSE b/javascript_resources/code_examples/ExpressCode/examples/node_modules/media-typer/LICENSE similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/media-typer/LICENSE rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/media-typer/LICENSE diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/media-typer/README.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/media-typer/README.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/media-typer/README.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/media-typer/README.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/media-typer/index.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/media-typer/index.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/media-typer/index.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/media-typer/index.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/media-typer/package.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/media-typer/package.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/media-typer/package.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/media-typer/package.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/merge-descriptors/HISTORY.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/merge-descriptors/HISTORY.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/merge-descriptors/HISTORY.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/merge-descriptors/HISTORY.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/merge-descriptors/LICENSE b/javascript_resources/code_examples/ExpressCode/examples/node_modules/merge-descriptors/LICENSE similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/merge-descriptors/LICENSE rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/merge-descriptors/LICENSE diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/merge-descriptors/README.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/merge-descriptors/README.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/merge-descriptors/README.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/merge-descriptors/README.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/merge-descriptors/index.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/merge-descriptors/index.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/merge-descriptors/index.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/merge-descriptors/index.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/merge-descriptors/package.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/merge-descriptors/package.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/merge-descriptors/package.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/merge-descriptors/package.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/methods/HISTORY.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/methods/HISTORY.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/methods/HISTORY.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/methods/HISTORY.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/methods/LICENSE b/javascript_resources/code_examples/ExpressCode/examples/node_modules/methods/LICENSE similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/methods/LICENSE rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/methods/LICENSE diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/methods/README.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/methods/README.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/methods/README.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/methods/README.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/methods/index.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/methods/index.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/methods/index.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/methods/index.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/methods/package.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/methods/package.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/methods/package.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/methods/package.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/mime-db/HISTORY.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/mime-db/HISTORY.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/mime-db/HISTORY.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/mime-db/HISTORY.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/mime-db/LICENSE b/javascript_resources/code_examples/ExpressCode/examples/node_modules/mime-db/LICENSE similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/mime-db/LICENSE rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/mime-db/LICENSE diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/mime-db/README.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/mime-db/README.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/mime-db/README.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/mime-db/README.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/mime-db/db.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/mime-db/db.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/mime-db/db.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/mime-db/db.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/mime-db/index.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/mime-db/index.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/mime-db/index.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/mime-db/index.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/mime-db/package.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/mime-db/package.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/mime-db/package.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/mime-db/package.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/mime-types/HISTORY.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/mime-types/HISTORY.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/mime-types/HISTORY.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/mime-types/HISTORY.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/mime-types/LICENSE b/javascript_resources/code_examples/ExpressCode/examples/node_modules/mime-types/LICENSE similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/mime-types/LICENSE rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/mime-types/LICENSE diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/mime-types/README.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/mime-types/README.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/mime-types/README.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/mime-types/README.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/mime-types/index.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/mime-types/index.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/mime-types/index.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/mime-types/index.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/mime-types/package.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/mime-types/package.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/mime-types/package.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/mime-types/package.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/mime/LICENSE b/javascript_resources/code_examples/ExpressCode/examples/node_modules/mime/LICENSE similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/mime/LICENSE rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/mime/LICENSE diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/mime/README.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/mime/README.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/mime/README.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/mime/README.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/mime/build/build.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/mime/build/build.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/mime/build/build.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/mime/build/build.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/mime/build/test.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/mime/build/test.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/mime/build/test.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/mime/build/test.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/mime/cli.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/mime/cli.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/mime/cli.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/mime/cli.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/mime/mime.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/mime/mime.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/mime/mime.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/mime/mime.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/mime/package.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/mime/package.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/mime/package.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/mime/package.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/mime/types.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/mime/types.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/mime/types.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/mime/types.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/morgan/HISTORY.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/morgan/HISTORY.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/morgan/HISTORY.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/morgan/HISTORY.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/morgan/LICENSE b/javascript_resources/code_examples/ExpressCode/examples/node_modules/morgan/LICENSE similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/morgan/LICENSE rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/morgan/LICENSE diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/morgan/README.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/morgan/README.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/morgan/README.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/morgan/README.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/morgan/index.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/morgan/index.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/morgan/index.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/morgan/index.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/morgan/package.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/morgan/package.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/morgan/package.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/morgan/package.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/ms/index.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/ms/index.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/ms/index.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/ms/index.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/ms/license.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/ms/license.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/ms/license.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/ms/license.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/ms/package.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/ms/package.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/ms/package.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/ms/package.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/ms/readme.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/ms/readme.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/ms/readme.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/ms/readme.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/negotiator/HISTORY.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/negotiator/HISTORY.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/negotiator/HISTORY.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/negotiator/HISTORY.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/negotiator/LICENSE b/javascript_resources/code_examples/ExpressCode/examples/node_modules/negotiator/LICENSE similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/negotiator/LICENSE rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/negotiator/LICENSE diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/negotiator/README.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/negotiator/README.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/negotiator/README.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/negotiator/README.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/negotiator/index.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/negotiator/index.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/negotiator/index.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/negotiator/index.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/negotiator/lib/charset.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/negotiator/lib/charset.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/negotiator/lib/charset.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/negotiator/lib/charset.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/negotiator/lib/encoding.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/negotiator/lib/encoding.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/negotiator/lib/encoding.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/negotiator/lib/encoding.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/negotiator/lib/language.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/negotiator/lib/language.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/negotiator/lib/language.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/negotiator/lib/language.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/negotiator/lib/mediaType.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/negotiator/lib/mediaType.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/negotiator/lib/mediaType.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/negotiator/lib/mediaType.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/negotiator/package.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/negotiator/package.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/negotiator/package.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/negotiator/package.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/on-finished/HISTORY.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/on-finished/HISTORY.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/on-finished/HISTORY.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/on-finished/HISTORY.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/on-finished/LICENSE b/javascript_resources/code_examples/ExpressCode/examples/node_modules/on-finished/LICENSE similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/on-finished/LICENSE rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/on-finished/LICENSE diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/on-finished/README.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/on-finished/README.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/on-finished/README.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/on-finished/README.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/on-finished/index.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/on-finished/index.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/on-finished/index.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/on-finished/index.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/on-finished/package.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/on-finished/package.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/on-finished/package.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/on-finished/package.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/on-headers/HISTORY.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/on-headers/HISTORY.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/on-headers/HISTORY.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/on-headers/HISTORY.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/on-headers/LICENSE b/javascript_resources/code_examples/ExpressCode/examples/node_modules/on-headers/LICENSE similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/on-headers/LICENSE rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/on-headers/LICENSE diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/on-headers/README.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/on-headers/README.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/on-headers/README.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/on-headers/README.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/on-headers/index.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/on-headers/index.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/on-headers/index.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/on-headers/index.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/on-headers/package.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/on-headers/package.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/on-headers/package.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/on-headers/package.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/parseurl/HISTORY.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/parseurl/HISTORY.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/parseurl/HISTORY.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/parseurl/HISTORY.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/parseurl/LICENSE b/javascript_resources/code_examples/ExpressCode/examples/node_modules/parseurl/LICENSE similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/parseurl/LICENSE rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/parseurl/LICENSE diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/parseurl/README.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/parseurl/README.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/parseurl/README.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/parseurl/README.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/parseurl/index.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/parseurl/index.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/parseurl/index.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/parseurl/index.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/parseurl/package.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/parseurl/package.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/parseurl/package.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/parseurl/package.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/path-to-regexp/History.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/path-to-regexp/History.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/path-to-regexp/History.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/path-to-regexp/History.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/path-to-regexp/LICENSE b/javascript_resources/code_examples/ExpressCode/examples/node_modules/path-to-regexp/LICENSE similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/path-to-regexp/LICENSE rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/path-to-regexp/LICENSE diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/path-to-regexp/Readme.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/path-to-regexp/Readme.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/path-to-regexp/Readme.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/path-to-regexp/Readme.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/path-to-regexp/index.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/path-to-regexp/index.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/path-to-regexp/index.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/path-to-regexp/index.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/path-to-regexp/package.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/path-to-regexp/package.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/path-to-regexp/package.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/path-to-regexp/package.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/proxy-addr/HISTORY.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/proxy-addr/HISTORY.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/proxy-addr/HISTORY.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/proxy-addr/HISTORY.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/proxy-addr/LICENSE b/javascript_resources/code_examples/ExpressCode/examples/node_modules/proxy-addr/LICENSE similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/proxy-addr/LICENSE rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/proxy-addr/LICENSE diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/proxy-addr/README.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/proxy-addr/README.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/proxy-addr/README.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/proxy-addr/README.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/proxy-addr/index.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/proxy-addr/index.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/proxy-addr/index.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/proxy-addr/index.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/proxy-addr/package.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/proxy-addr/package.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/proxy-addr/package.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/proxy-addr/package.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/qs/.editorconfig b/javascript_resources/code_examples/ExpressCode/examples/node_modules/qs/.editorconfig similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/qs/.editorconfig rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/qs/.editorconfig diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/qs/.eslintignore b/javascript_resources/code_examples/ExpressCode/examples/node_modules/qs/.eslintignore similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/qs/.eslintignore rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/qs/.eslintignore diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/qs/.eslintrc b/javascript_resources/code_examples/ExpressCode/examples/node_modules/qs/.eslintrc similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/qs/.eslintrc rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/qs/.eslintrc diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/qs/CHANGELOG.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/qs/CHANGELOG.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/qs/CHANGELOG.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/qs/CHANGELOG.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/qs/LICENSE b/javascript_resources/code_examples/ExpressCode/examples/node_modules/qs/LICENSE similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/qs/LICENSE rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/qs/LICENSE diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/qs/README.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/qs/README.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/qs/README.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/qs/README.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/qs/dist/qs.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/qs/dist/qs.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/qs/dist/qs.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/qs/dist/qs.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/qs/lib/formats.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/qs/lib/formats.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/qs/lib/formats.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/qs/lib/formats.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/qs/lib/index.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/qs/lib/index.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/qs/lib/index.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/qs/lib/index.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/qs/lib/parse.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/qs/lib/parse.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/qs/lib/parse.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/qs/lib/parse.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/qs/lib/stringify.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/qs/lib/stringify.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/qs/lib/stringify.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/qs/lib/stringify.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/qs/lib/utils.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/qs/lib/utils.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/qs/lib/utils.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/qs/lib/utils.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/qs/package.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/qs/package.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/qs/package.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/qs/package.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/qs/test/.eslintrc b/javascript_resources/code_examples/ExpressCode/examples/node_modules/qs/test/.eslintrc similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/qs/test/.eslintrc rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/qs/test/.eslintrc diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/qs/test/index.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/qs/test/index.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/qs/test/index.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/qs/test/index.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/qs/test/parse.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/qs/test/parse.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/qs/test/parse.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/qs/test/parse.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/qs/test/stringify.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/qs/test/stringify.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/qs/test/stringify.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/qs/test/stringify.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/qs/test/utils.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/qs/test/utils.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/qs/test/utils.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/qs/test/utils.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/range-parser/HISTORY.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/range-parser/HISTORY.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/range-parser/HISTORY.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/range-parser/HISTORY.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/range-parser/LICENSE b/javascript_resources/code_examples/ExpressCode/examples/node_modules/range-parser/LICENSE similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/range-parser/LICENSE rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/range-parser/LICENSE diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/range-parser/README.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/range-parser/README.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/range-parser/README.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/range-parser/README.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/range-parser/index.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/range-parser/index.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/range-parser/index.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/range-parser/index.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/range-parser/package.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/range-parser/package.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/range-parser/package.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/range-parser/package.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/raw-body/HISTORY.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/raw-body/HISTORY.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/raw-body/HISTORY.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/raw-body/HISTORY.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/raw-body/LICENSE b/javascript_resources/code_examples/ExpressCode/examples/node_modules/raw-body/LICENSE similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/raw-body/LICENSE rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/raw-body/LICENSE diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/raw-body/README.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/raw-body/README.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/raw-body/README.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/raw-body/README.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/raw-body/index.d.ts b/javascript_resources/code_examples/ExpressCode/examples/node_modules/raw-body/index.d.ts similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/raw-body/index.d.ts rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/raw-body/index.d.ts diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/raw-body/index.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/raw-body/index.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/raw-body/index.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/raw-body/index.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/raw-body/package.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/raw-body/package.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/raw-body/package.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/raw-body/package.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/safe-buffer/.travis.yml b/javascript_resources/code_examples/ExpressCode/examples/node_modules/safe-buffer/.travis.yml similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/safe-buffer/.travis.yml rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/safe-buffer/.travis.yml diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/safe-buffer/LICENSE b/javascript_resources/code_examples/ExpressCode/examples/node_modules/safe-buffer/LICENSE similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/safe-buffer/LICENSE rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/safe-buffer/LICENSE diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/safe-buffer/README.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/safe-buffer/README.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/safe-buffer/README.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/safe-buffer/README.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/safe-buffer/index.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/safe-buffer/index.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/safe-buffer/index.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/safe-buffer/index.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/safe-buffer/package.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/safe-buffer/package.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/safe-buffer/package.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/safe-buffer/package.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/safe-buffer/test.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/safe-buffer/test.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/safe-buffer/test.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/safe-buffer/test.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/send/HISTORY.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/send/HISTORY.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/send/HISTORY.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/send/HISTORY.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/send/LICENSE b/javascript_resources/code_examples/ExpressCode/examples/node_modules/send/LICENSE similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/send/LICENSE rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/send/LICENSE diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/send/README.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/send/README.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/send/README.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/send/README.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/send/index.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/send/index.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/send/index.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/send/index.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/send/package.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/send/package.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/send/package.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/send/package.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/serve-static/HISTORY.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/serve-static/HISTORY.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/serve-static/HISTORY.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/serve-static/HISTORY.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/serve-static/LICENSE b/javascript_resources/code_examples/ExpressCode/examples/node_modules/serve-static/LICENSE similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/serve-static/LICENSE rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/serve-static/LICENSE diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/serve-static/README.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/serve-static/README.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/serve-static/README.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/serve-static/README.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/serve-static/index.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/serve-static/index.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/serve-static/index.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/serve-static/index.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/serve-static/package.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/serve-static/package.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/serve-static/package.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/serve-static/package.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/setprototypeof/LICENSE b/javascript_resources/code_examples/ExpressCode/examples/node_modules/setprototypeof/LICENSE similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/setprototypeof/LICENSE rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/setprototypeof/LICENSE diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/setprototypeof/README.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/setprototypeof/README.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/setprototypeof/README.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/setprototypeof/README.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/setprototypeof/index.d.ts b/javascript_resources/code_examples/ExpressCode/examples/node_modules/setprototypeof/index.d.ts similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/setprototypeof/index.d.ts rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/setprototypeof/index.d.ts diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/setprototypeof/index.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/setprototypeof/index.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/setprototypeof/index.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/setprototypeof/index.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/setprototypeof/package.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/setprototypeof/package.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/setprototypeof/package.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/setprototypeof/package.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/statuses/HISTORY.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/statuses/HISTORY.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/statuses/HISTORY.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/statuses/HISTORY.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/statuses/LICENSE b/javascript_resources/code_examples/ExpressCode/examples/node_modules/statuses/LICENSE similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/statuses/LICENSE rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/statuses/LICENSE diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/statuses/README.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/statuses/README.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/statuses/README.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/statuses/README.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/statuses/codes.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/statuses/codes.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/statuses/codes.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/statuses/codes.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/statuses/index.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/statuses/index.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/statuses/index.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/statuses/index.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/statuses/package.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/statuses/package.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/statuses/package.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/statuses/package.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/type-is/HISTORY.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/type-is/HISTORY.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/type-is/HISTORY.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/type-is/HISTORY.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/type-is/LICENSE b/javascript_resources/code_examples/ExpressCode/examples/node_modules/type-is/LICENSE similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/type-is/LICENSE rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/type-is/LICENSE diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/type-is/README.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/type-is/README.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/type-is/README.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/type-is/README.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/type-is/index.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/type-is/index.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/type-is/index.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/type-is/index.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/type-is/package.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/type-is/package.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/type-is/package.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/type-is/package.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/unpipe/HISTORY.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/unpipe/HISTORY.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/unpipe/HISTORY.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/unpipe/HISTORY.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/unpipe/LICENSE b/javascript_resources/code_examples/ExpressCode/examples/node_modules/unpipe/LICENSE similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/unpipe/LICENSE rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/unpipe/LICENSE diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/unpipe/README.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/unpipe/README.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/unpipe/README.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/unpipe/README.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/unpipe/index.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/unpipe/index.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/unpipe/index.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/unpipe/index.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/unpipe/package.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/unpipe/package.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/unpipe/package.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/unpipe/package.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/utils-merge/.npmignore b/javascript_resources/code_examples/ExpressCode/examples/node_modules/utils-merge/.npmignore similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/utils-merge/.npmignore rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/utils-merge/.npmignore diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/utils-merge/LICENSE b/javascript_resources/code_examples/ExpressCode/examples/node_modules/utils-merge/LICENSE similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/utils-merge/LICENSE rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/utils-merge/LICENSE diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/utils-merge/README.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/utils-merge/README.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/utils-merge/README.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/utils-merge/README.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/utils-merge/index.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/utils-merge/index.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/utils-merge/index.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/utils-merge/index.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/utils-merge/package.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/utils-merge/package.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/utils-merge/package.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/utils-merge/package.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/vary/HISTORY.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/vary/HISTORY.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/vary/HISTORY.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/vary/HISTORY.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/vary/LICENSE b/javascript_resources/code_examples/ExpressCode/examples/node_modules/vary/LICENSE similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/vary/LICENSE rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/vary/LICENSE diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/vary/README.md b/javascript_resources/code_examples/ExpressCode/examples/node_modules/vary/README.md similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/vary/README.md rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/vary/README.md diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/vary/index.js b/javascript_resources/code_examples/ExpressCode/examples/node_modules/vary/index.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/vary/index.js rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/vary/index.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/node_modules/vary/package.json b/javascript_resources/code_examples/ExpressCode/examples/node_modules/vary/package.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/node_modules/vary/package.json rename to javascript_resources/code_examples/ExpressCode/examples/node_modules/vary/package.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/package.json b/javascript_resources/code_examples/ExpressCode/examples/package.json similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/package.json rename to javascript_resources/code_examples/ExpressCode/examples/package.json diff --git a/389N_stuff/code_examples/ExpressCode/examples/postParameters.js b/javascript_resources/code_examples/ExpressCode/examples/postParameters.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/postParameters.js rename to javascript_resources/code_examples/ExpressCode/examples/postParameters.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/queryArguments.js b/javascript_resources/code_examples/ExpressCode/examples/queryArguments.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/queryArguments.js rename to javascript_resources/code_examples/ExpressCode/examples/queryArguments.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/routing.js b/javascript_resources/code_examples/ExpressCode/examples/routing.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/routing.js rename to javascript_resources/code_examples/ExpressCode/examples/routing.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/serverStaticFiles/Testudo.jpg b/javascript_resources/code_examples/ExpressCode/examples/serverStaticFiles/Testudo.jpg similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/serverStaticFiles/Testudo.jpg rename to javascript_resources/code_examples/ExpressCode/examples/serverStaticFiles/Testudo.jpg diff --git a/389N_stuff/code_examples/ExpressCode/examples/serverStaticFiles/armory.jpg b/javascript_resources/code_examples/ExpressCode/examples/serverStaticFiles/armory.jpg similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/serverStaticFiles/armory.jpg rename to javascript_resources/code_examples/ExpressCode/examples/serverStaticFiles/armory.jpg diff --git a/389N_stuff/code_examples/ExpressCode/examples/servingFiles.js b/javascript_resources/code_examples/ExpressCode/examples/servingFiles.js similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/servingFiles.js rename to javascript_resources/code_examples/ExpressCode/examples/servingFiles.js diff --git a/389N_stuff/code_examples/ExpressCode/examples/templates/courseInfo.ejs b/javascript_resources/code_examples/ExpressCode/examples/templates/courseInfo.ejs similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/templates/courseInfo.ejs rename to javascript_resources/code_examples/ExpressCode/examples/templates/courseInfo.ejs diff --git a/389N_stuff/code_examples/ExpressCode/examples/templates/welcome.ejs b/javascript_resources/code_examples/ExpressCode/examples/templates/welcome.ejs similarity index 100% rename from 389N_stuff/code_examples/ExpressCode/examples/templates/welcome.ejs rename to javascript_resources/code_examples/ExpressCode/examples/templates/welcome.ejs diff --git a/javascript_resources/code_examples/JSConstructsICode/ArrayMethods.html b/javascript_resources/code_examples/JSConstructsICode/ArrayMethods.html new file mode 100755 index 0000000000000000000000000000000000000000..f5f2184e4b921dec378542eb3e8bbb801dc1ecd7 --- /dev/null +++ b/javascript_resources/code_examples/JSConstructsICode/ArrayMethods.html @@ -0,0 +1,84 @@ +<!doctype html> +<html> + <head> + <meta charset="utf-8" /> + <title>Array Methods</title> + </head> + + <body> + <script> + "use strict"; + + main(); + + function printArray(data) { + var i; + + for (i = 0; i < data.length; i++) { + document.writeln(data[i] + " "); + } + document.writeln("<br>"); + } + + function main() { + var languages = ["Java", "C", "PHP", "Python"]; + document.writeln("Length: " + languages.length + "<br>"); + + languages.push("JavaScript"); + document.writeln("After pushing element<br>"); + printArray(languages); + + var retrieved = languages.pop(); + document.writeln("After popping element<br>"); + printArray(languages); + + var retrieved = languages.shift(); + document.writeln("After shifting<br>"); + printArray(languages); + + document.writeln("After unshifting<br>"); + languages.unshift(retrieved); + printArray(languages); + + document.writeln("Finding index of \"C\": "); + document.writeln(languages.indexOf("C") + "<br>"); + + var removedElements = languages.splice(1, 2); + document.writeln("After removing elements with splice<br>"); + printArray(languages); + document.writeln("Elements removed<br>"); + printArray(removedElements); + + var shallowCopy = languages.slice(); + document.writeln("Shallow copy<br>"); + printArray(shallowCopy); + + var seasons = ["Fall", "Winter", "Spring", "Summer"]; + seasons.reverse(); + document.writeln("After reversing array<br>"); + printArray(seasons); + + var part1 = [10, 20, 30]; + var part2 = [40, 50, 60]; + var part3 = part1.concat(part2); + document.writeln("After concatenating<br>"); + printArray(part3); + + document.writeln("After fill<br>"); + var filled = new Array(4).fill(100); + printArray(filled); + + document.writeln("Devices<br>"); + var devices = ["Computer", "Clock", "Generator"]; + devices[7] = "Phone"; + devices.forEach(function (elem, index) { + document.writeln("Index: " + index + ", Elem: " + elem + "<br>"); + }); + } + + function name(args) { + //code + } + </script> + </body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/JSConstructsICode/ArraysLengthProp.html b/javascript_resources/code_examples/JSConstructsICode/ArraysLengthProp.html new file mode 100755 index 0000000000000000000000000000000000000000..121843911e044c7526a794e2f8cc38ed57fb7411 --- /dev/null +++ b/javascript_resources/code_examples/JSConstructsICode/ArraysLengthProp.html @@ -0,0 +1,44 @@ +<!doctype html> +<html> + <head> + <meta charset="utf-8" /> + <title>Arrays Length Property</title> + </head> + + <body> + <script> + "use strict"; + + main(); + + function main() { + var languages = ["English", "Spanish", "French"]; + + printArray(languages); + document.writeln("Length: " + languages.length + "<br>"); + + languages[8] = "Italian"; + document.writeln("After adding Italian<br>"); + printArray(languages); + document.writeln("Keys<br>"); + document.writeln(Object.keys(languages) + "<br>"); + document.writeln("Length: " + languages.length + "<br>"); + + languages.length = 2; + document.writeln("After changing length<br>"); + printArray(languages); + + } + + function printArray(data) { + var i; + + for (i = 0; i < data.length; i++) { + document.writeln(data[i] + " "); + } + document.writeln("<br>"); + } + + </script> + </body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/JSConstructsICode/ArraysOneDim.html b/javascript_resources/code_examples/JSConstructsICode/ArraysOneDim.html new file mode 100755 index 0000000000000000000000000000000000000000..887a243c0fa611ac114c60031a4dc1a97462cf24 --- /dev/null +++ b/javascript_resources/code_examples/JSConstructsICode/ArraysOneDim.html @@ -0,0 +1,46 @@ +<!doctype html> +<html> + <head> + <meta charset="utf-8" /> + <title>Arrays</title> + </head> + <body> + <script> + "use strict"; + main(); + + function main() { + var numOfBeds = 4; + + var roomNumber = reserveRoom(numOfBeds); + printRoom(roomNumber); + + cleanRoom(roomNumber); + printRoom(roomNumber); + + } + + function reserveRoom(numberOfBeds) { + var roomNumber = new Array(numberOfBeds); + + for (var idx = 0; idx < roomNumber.length; idx++) { + roomNumber[idx] = "Bed" + idx; + } + + return roomNumber; + } + + function printRoom(roomNumberParameter) { + for (var idx = 0; idx < roomNumberParameter.length; idx++) { + document.writeln(roomNumberParameter[idx] + "<br />"); + } + } + + function cleanRoom(roomNumberParameter) { + for (var idx = 0; idx < roomNumberParameter.length; idx++) { + roomNumberParameter[idx] += " cleaned "; + } + } + </script> + </body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/JSConstructsICode/ArraysTwoDim.html b/javascript_resources/code_examples/JSConstructsICode/ArraysTwoDim.html new file mode 100755 index 0000000000000000000000000000000000000000..c4f970f1ee92aaad96e7ead9752d2d79aedebc41 --- /dev/null +++ b/javascript_resources/code_examples/JSConstructsICode/ArraysTwoDim.html @@ -0,0 +1,65 @@ +<!doctype html> +<html> + <head> + <meta charset="utf-8"/> + <title>Two-Dimensional Arrays</title> + </head> + <body> + <script> + "use strict"; + main(); + + function main() { + document.writeln("<h2>First Data Set</h2>"); + var firstArray = [[10, 20, 30], + [40, 50, 60], + [70, 80, 90]]; + printArray(firstArray); + + document.writeln("<h2>Second Data Set</h2>"); + var secondArray = createArray(2, 3); + initializeArray(secondArray, 1); + printArray(secondArray); + + document.writeln("<h2>Third Data Set (Ragged Array)</h2>"); + var thirdArray = [[100, 200, 300], + [400], + [700, 800], + [], + [500, 600, 900, 1000]]; + printArray(thirdArray); + } + + function createArray(maxRows, maxCols) { + var newArray = new Array(maxRows); + + for (var row = 0; row < maxRows; row++) { + newArray[row] = new Array(maxCols); + } + + return newArray; + } + + function initializeArray(data, initialValue) { + var row, col; + for (row = 0; row < data.length; row++) { + for (col = 0; col < data[row].length; col++) { + data[row][col] = initialValue; + initialValue++; + } + } + } + + function printArray(data) { + var row, col; + for (row = 0; row < data.length; row++) { + for (col = 0; col < data[row].length; col++) { + document.writeln(data[row][col] + " "); + } + document.writeln("<br />"); // why do we need this? + } + } + + </script> +</body> +</html> diff --git a/javascript_resources/code_examples/JSConstructsICode/BlockScope.html b/javascript_resources/code_examples/JSConstructsICode/BlockScope.html new file mode 100755 index 0000000000000000000000000000000000000000..25ec693b817e8f6d1e899f3b9f654c1b37680733 --- /dev/null +++ b/javascript_resources/code_examples/JSConstructsICode/BlockScope.html @@ -0,0 +1,32 @@ +<!doctype html> +<html> +<head> + <meta charset="utf-8" /> + <title>JS Example</title> +</head> + +<body> + <script> + "use strict"; + + main(); + + function main() { + for (let i = 1; i <= 4; i++) { + document.writeln(i + "<br>"); + } + // document.writeln("Value if i: " + i); Generates ReferenceError + evaluate(200); + } + + function evaluate(x) { + if (x >= 100) { + let y = x * 100; + document.writeln("Value in if: " + y); + } + return y; // undefined (see console) + } + + </script> +</body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/JSConstructsICode/CharAt.html b/javascript_resources/code_examples/JSConstructsICode/CharAt.html new file mode 100755 index 0000000000000000000000000000000000000000..d9a789bf161b0c9c4a3854f1475e8c45058bc672 --- /dev/null +++ b/javascript_resources/code_examples/JSConstructsICode/CharAt.html @@ -0,0 +1,52 @@ +<!doctype html> +<html> + <head> + <meta charset="UTF-8" /> + <title>charAt Example</title> + </head> + <body> + <script> + "use strict"; + + main(); + + function main() { + var a = "Hello"; + + alert("Number of instances found is " + findInstancesOfChar(a, "l")); + var value = prompt("Enter four digit value"); + var message; + if (validDigits(value, 4)) { + message = "Correct value provided"; + } else { + message = "Incorrect value provided"; + } + alert(message); + } + + function findInstancesOfChar(str, target) { + var count = 0; + + /* What value for str does not allow the loop execution? */ + for (var idx = 0; idx < str.length; idx++) { + if (str[idx] === target) { + count++; + } + } + return count; + } + + function validDigits(data, length) { + if (data.length != length) + return false; + else { + for (var idx = 0; idx < data.length; idx++) { + if (isNaN(data.charAt(idx))) + return false; + } + return true; + } + } + </script> + </body> +</html> diff --git a/javascript_resources/code_examples/JSConstructsICode/ConsoleEx.html b/javascript_resources/code_examples/JSConstructsICode/ConsoleEx.html new file mode 100755 index 0000000000000000000000000000000000000000..9ac8350ba5734253e5f9f9997dfbb5a5ccd2bb57 --- /dev/null +++ b/javascript_resources/code_examples/JSConstructsICode/ConsoleEx.html @@ -0,0 +1,21 @@ +<!doctype html> +<head> + <meta charset="utf-8" /> + <title>JS Example</title> +</head> + +<body> + <script> + var v1 = prompt("Enter value"); + + console.log("First value entered: " + v1); + var v2 = Number(prompt("Enter positive value")); + if (v2 < 0) { + console.error("Negative value provided."); + } else { + console.info("Positive value provided"); + } + console.warn("You should always start your projects early"); + </script> +</body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/JSConstructsICode/Const.html b/javascript_resources/code_examples/JSConstructsICode/Const.html new file mode 100755 index 0000000000000000000000000000000000000000..8595f2fe8c9317d58656c4f84c9040c29a4e1723 --- /dev/null +++ b/javascript_resources/code_examples/JSConstructsICode/Const.html @@ -0,0 +1,23 @@ +<!doctype html> +<html> +<head> + <meta charset="utf-8" /> + <title>JS Example</title> +</head> + +<body> + <script> + "use strict"; + + main(); + + function main() { + const MAX_TEMP = 4; + + document.writeln("Contant value: " + MAX_TEMP); + MAX_TEMP = 6; // see console + } + + </script> +</body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/JSConstructsICode/DefiningFunctions.html b/javascript_resources/code_examples/JSConstructsICode/DefiningFunctions.html new file mode 100755 index 0000000000000000000000000000000000000000..8a67c0cf348191f28210c30ed5ca6970f6dbf8c8 --- /dev/null +++ b/javascript_resources/code_examples/JSConstructsICode/DefiningFunctions.html @@ -0,0 +1,35 @@ +<!doctype html> +<html> +<head> + <meta charset="utf-8" /> + <title>JS Example</title> +</head> + +<body onload="main()"> + <script> + + main(); + + function main() { + document.writeln(product(3,4)); + + /* Function expression (anonymous function) */ + var myProduct = function(x, y) { + return x * y; + }; + document.writeln("<br />" + myProduct(100, 200)); + + /* Using Function constructor */ + var thirdProduct = new Function("x", "y", "return x * y"); + document.writeln("<br />" + thirdProduct(2, 3)); + + } + + /* Function declaration */ + function product(x, y) { + return x * y; + } + + </script> +</body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/JSConstructsICode/ForOf.html b/javascript_resources/code_examples/JSConstructsICode/ForOf.html new file mode 100755 index 0000000000000000000000000000000000000000..00063b02a5a4383de0dafe2c6fdaff01721f3962 --- /dev/null +++ b/javascript_resources/code_examples/JSConstructsICode/ForOf.html @@ -0,0 +1,18 @@ +<!doctype html> +<html> +<head> + <meta charset="utf-8" /> + <title>JS Example</title> +</head> + +<body> + <script> + "use strict"; + + let languages = ["C++", "Fortran", "JavaScript"]; + for (let lang of languages) { + document.writeln(lang + "<br>"); + } + </script> +</body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/JSConstructsICode/FunctionsAsDataI.html b/javascript_resources/code_examples/JSConstructsICode/FunctionsAsDataI.html new file mode 100755 index 0000000000000000000000000000000000000000..6751d6f2c27d2967dc2275618c655cb8adab46fc --- /dev/null +++ b/javascript_resources/code_examples/JSConstructsICode/FunctionsAsDataI.html @@ -0,0 +1,26 @@ +<!doctype html> +<html> + <head> + <meta charset="UTF-8" /> + <title>Functions as Data</title> + </head> + + <body> + <script> + "use strict"; + main(); + + function main() { + var sayHi = hello; + var hi = hello; + hi("John"); + hello("John"); + sayHi("John"); + } + + function hello(name) { + document.writeln(name + "<br />"); + } + </script> + </body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/JSConstructsICode/FunctionsAsDataII.html b/javascript_resources/code_examples/JSConstructsICode/FunctionsAsDataII.html new file mode 100755 index 0000000000000000000000000000000000000000..f7d643e163c6c12686191276719917fd5cdf249c --- /dev/null +++ b/javascript_resources/code_examples/JSConstructsICode/FunctionsAsDataII.html @@ -0,0 +1,45 @@ +<!doctype html> +<html> + <head> + <meta charset="utf-8" /> + <title>Functions as Data</title> + </head> + <body> + <script> + "use strict"; + + main(); + + function main() { + var numberOfValues = Number(prompt("Enter number of values to print")); + var wantHTML = window.confirm("Press OK for HTML format and Cancel for text"); + var printingFunction; + + if (wantHTML) { + processValues(numberOfValues, htmlFormat); + } else { + processValues(numberOfValues, textFormat); + } + + processValues(numberOfValues, printingFunction); + } + + function textFormat(data) { + document.writeln(data); + } + + function htmlFormat(data) { + document.writeln("<em><strong>" + data + ", </strong></em>"); + } + + function processValues(maximum, printOption) { + var curr = 1; + while (curr <= maximum) { + printOption(curr); + + curr++; + } + } + </script> + </body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/JSConstructsICode/InstanceOf.html b/javascript_resources/code_examples/JSConstructsICode/InstanceOf.html new file mode 100755 index 0000000000000000000000000000000000000000..1f771e1c903f9d689b43b8cb21377a43e59500ef --- /dev/null +++ b/javascript_resources/code_examples/JSConstructsICode/InstanceOf.html @@ -0,0 +1,42 @@ +<!doctype html> +<html> + <head> + <meta charset="UTF-8" /> + <title>charAt Example</title> + </head> + <body> + <script> + "use strict"; + + main(); + + function printArray(scores) { + var i; + + for (i = 0; i < scores.length; i++) { + document.writeln("Value " + scores[i] + "<br>"); + } + } + + function main() { + var myInfo = { + name: "John", + id: 10 + }; + + var scores = [10, 30]; + printArray(scores); + + document.writeln("myInfo instance of Object: " + (myInfo instanceof Object) + "<br>"); + document.writeln("scores instance of Object: " + (scores instanceof Object) + "<br>"); + document.writeln("scores instance of Array: " + (scores instanceof Array) + "<br>"); + document.writeln("printArray instance of Function: " + (printArray instanceof Function) + "<br>"); + document.writeln("typeof myInfo: " + typeof myInfo + "<br>"); + document.writeln("typeof scores: " + typeof scores + "<br>"); + document.writeln("typeof printArray: " + typeof printArray + "<br>"); + document.writeln("Array.isArray(scores): " + Array.isArray(scores) + "<br>"); + } + + </script> + </body> +</html> diff --git a/javascript_resources/code_examples/JSConstructsICode/NaN.html b/javascript_resources/code_examples/JSConstructsICode/NaN.html new file mode 100755 index 0000000000000000000000000000000000000000..b6041083f8957646104a9ba9a330a92bd6d3dbfe --- /dev/null +++ b/javascript_resources/code_examples/JSConstructsICode/NaN.html @@ -0,0 +1,35 @@ +<!doctype html> +<html> + <head> + <meta charset="utf-8" /> + <title>NaN</title> + </head> + + <body> + <script> + "use strict"; + main(); + + function main() { + var examScore = 84.5; + var name = "Mary Smith"; + + var message = "empty string to number: " + Number("") + "\n"; + message += "examScore is a number: " + !isNaN(examScore) + "\n"; + message += "empty string is not a number: " + isNaN("") + "\n"; + message += "!isNaN(name) is a number: " + !isNaN(name) + "\n"; + message += "!Number.isNaN(name) is a number: " + !Number.isNaN(name) + "\n"; + message += "NaN == NaN: " + (NaN == NaN) + "\n"; + message += "NaN === NaN: " + (NaN === NaN) + "\n"; + message += "NaN == \"hello\": " + (NaN == "hello") + "\n"; + message += "\"24Hi\" is a number: " + !isNaN("24Hi") + "\n"; + message += "\"-24\" is a number: " + !isNaN("-24") + "\n"; + message += "\"+24\" is a number: " + !isNaN("+24") + "\n"; + message += "Numerical expression is a number: " + !isNaN(5 + 4) + "\n"; + message += "String expression is a number: " + !isNaN("5" + "4") + "\n"; + message += "String expression (2) is a number: " + !isNaN("5 + 4") + "\n"; + alert(message); + } + </script> + </body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/JSConstructsICode/NoBlockScope.html b/javascript_resources/code_examples/JSConstructsICode/NoBlockScope.html new file mode 100755 index 0000000000000000000000000000000000000000..71af4a8c574f59e46f8a4d25a7b1da46ee0d39e4 --- /dev/null +++ b/javascript_resources/code_examples/JSConstructsICode/NoBlockScope.html @@ -0,0 +1,25 @@ +<!doctype html> +<html> +<head> + <meta charset="utf-8" /> + <title>JS Example</title> +</head> + +<body> + <script> + "use strict"; + + main(); + + function main() { + document.writeln("Value: " + evaluate(200)); + } + function evaluate(x) { + if (x >= 100) { + var y = x * 100; + } + return y; // accessible + } + </script> +</body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/JSConstructsICode/Null.html b/javascript_resources/code_examples/JSConstructsICode/Null.html new file mode 100755 index 0000000000000000000000000000000000000000..a142e9d745332f6c99842e42e816e9e35a3d48ac --- /dev/null +++ b/javascript_resources/code_examples/JSConstructsICode/Null.html @@ -0,0 +1,25 @@ +<!doctype html> +<html> + <head> + <meta charset="utf-8" /> + <title>Null</title> + </head> + + <body> + <script> + + "use strict"; + main(); + + function main() { + var name = window.prompt("Enter your name (select cancel to see result)"); + if (name === null) { + window.confirm("Data input operation cancelled."); + } else { + window.confirm("Welcome: " + name); + } + } + + </script> + </body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/JSConstructsICode/NumericValues.html b/javascript_resources/code_examples/JSConstructsICode/NumericValues.html new file mode 100755 index 0000000000000000000000000000000000000000..d28a4edeaec0459e6f7ad3a240a82ce0e8bcee6b --- /dev/null +++ b/javascript_resources/code_examples/JSConstructsICode/NumericValues.html @@ -0,0 +1,43 @@ +<!doctype html> +<html> + <head> + <meta charset="utf-8" /> + <title>Numeric Values</title> + </head> + + <body> + <script> + "use strict"; + + var info = "NaN: " + Number.NaN + "<br />"; + info += "Infinity: " + Infinity + "<br />"; + info += "MAX_VALUE: " + Number.MAX_VALUE + "<br />"; + info += "MIN_VALUE: " + Number.MIN_VALUE + "<br />"; + info += "POSITIVE_INFINITY: " + Number.POSITIVE_INFINITY + "<br />"; + info += "NEGATIVE_INFINITY: " + Number.NEGATIVE_INFINITY + "<br />"; + info += "isFinite(100): " + isFinite(100) + "<br />"; + info += "isFinite(null): " + isFinite(null) + "<br />"; + info += "Number.isFinite(null): " + Number.isFinite(null) + "<br />"; + + document.writeln(info); + + document.writeln("Result of 1/0: " + 1 / 0 + "<br />"); + document.writeln("Result of 1/Infinity: " + 1 / Infinity + "<br />"); + document.writeln("Result of Infinity/0: " + Infinity / 0 + "<br />"); + document.writeln("Result of Infinity/Infinity: " + Infinity / Infinity + "<br />"); + document.writeln("Square root of negative value: " + Math.sqrt(-10) + "<br />"); + document.writeln("Square root of a string: " + Math.sqrt("Rose") + "<br />"); + + document.writeln("Floating-point values are approximations<br />"); + var x = 1/7 + 4/7 + 2/7; + var y = (1 + 4 + 2) / 7; + document.writeln("Value of x: " + x + "<br />"); + document.writeln("Value of y: " + y + "<br />"); + if (x === y) { + document.writeln("Same value<br />"); + } else { + document.writeln("Different values<br />"); + } + </script> + </body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/JSConstructsICode/RandomValues.html b/javascript_resources/code_examples/JSConstructsICode/RandomValues.html new file mode 100755 index 0000000000000000000000000000000000000000..1654a5b101fe2ac87ade63063b936dee530c8506 --- /dev/null +++ b/javascript_resources/code_examples/JSConstructsICode/RandomValues.html @@ -0,0 +1,70 @@ +<!doctype html> +<html> + <head> + <meta charset="utf-8" /> + <title>Random Values</title> + </head> + + <body> + <script> + "use strict"; + main(); + + function main() { + var maximum, menu = "Enter 1 for random values [0, 1)\n"; + menu += "Enter 2 for random values between [0, max)\n"; + menu += "Enter 3 for integer Random values between [0, max]"; + + var choice = Number(prompt(menu)); + var numberOfValues = Number(prompt("Enter number of values to generate")); + if (choice === 1) { + simpleRandomCall(numberOfValues); + } else if (choice === 2) { + maximum = Number(prompt("Enter maximum value")); + randomValues(maximum, numberOfValues); + } else if (choice === 3) { + maximum = Number(prompt("Enter maximum value")); + randomIntegerValues(maximum, numberOfValues); + } else { + alert("Invalid choice."); + } + } + + function simpleRandomCall(numberOfValues) { + document.writeln("<h1>Values between 0 and less than 1</h1>"); + document.writeln("<p>"); + + var i = 0; + while (i < numberOfValues) { + document.writeln(Math.random()+"<br />"); + i++; + } + document.writeln("</p>"); + } + + function randomValues(max, numberOfValues) { + document.writeln("<h1>Random values between 0 and less than " + max + " </h1>"); + document.writeln("<p>"); + + var i = 0; + while (i < numberOfValues) { + document.writeln((max * Math.random())+"<br />"); + i++; + } + document.writeln("</p>"); + } + + function randomIntegerValues(max, numberOfCalls) { + document.writeln("<h1>Random integer values between 0 and " + max + " </h1>"); + document.writeln("<p>"); + + var i = 0; + while (i < numberOfCalls) { + document.writeln(Math.floor((max+1) * Math.random())+"<br />"); + i++; + } + document.writeln("</p>"); + } + </script> + </body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/JSConstructsICode/Sorting.html b/javascript_resources/code_examples/JSConstructsICode/Sorting.html new file mode 100755 index 0000000000000000000000000000000000000000..deab8c1fe50d129fd0d0f0589fe6c3a486f71d62 --- /dev/null +++ b/javascript_resources/code_examples/JSConstructsICode/Sorting.html @@ -0,0 +1,71 @@ +<!doctype html> +<html> + <head> + <meta charset="utf-8" /> + <title>Sorting</title> + </head> + + <body> + <script> + "use strict"; + + main(); + + function printArray(data) { + var i; + + for (i = 0; i < data.length; i++) { + document.writeln(data[i] + " "); + } + document.writeln("<br>"); + } + + function main() { + var names = ["Rose", "Bob", "Tom", "Albert"]; + + document.writeln("Original<br>"); + document.writeln(names.join() + "<br>"); + document.writeln("Sorted<br>"); + names.sort(); + document.writeln(names.join("*") + "<br>"); + + var scores = [30, 2, 4, 5]; + document.writeln("Original<br>"); + document.writeln(scores.join() + "<br>"); + document.writeln("Sorted<br>"); + scores.sort(); // Unicode code point order does generates unexpected result + document.writeln(scores.join(",") + "<br>"); + + document.writeln("Using comparison function<br>"); + scores.sort(function (x, y) { return x - y; }); + document.writeln(scores.join(",") + "<br>"); + + document.writeln("Sorted names<br>"); + names.sort(strCompare); + document.writeln(names.join(",") + "<br>"); + + var students = [ + { name: "John", id: 3}, + { name: "Peter", id: 2}, + { name: "Mary", id: 10} + ]; + + document.writeln("Sorting array of objects<br>"); + students.sort(function (x, y) { return strCompare(x.name, y.name); }); + for (let i = 0; i < students.length; i++) { + document.writeln(students[i].name + "<br>"); + } + } + + function strCompare(x, y) { + if (x < y) { + return 1; + } else if (x > y) { + return -1; + } else { + return 0; + } + } + </script> + </body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/JSConstructsICode/StringMethods.html b/javascript_resources/code_examples/JSConstructsICode/StringMethods.html new file mode 100755 index 0000000000000000000000000000000000000000..d3d4408a4c7817663fcd4dc15bf0929cd287e6c2 --- /dev/null +++ b/javascript_resources/code_examples/JSConstructsICode/StringMethods.html @@ -0,0 +1,64 @@ +<!doctype html> +<html> + <head> + <meta charset="utf-8" /> + <title>String Methods</title> + </head> + + <body> + <script> + "use strict"; + + main(); + + function main() { + var str1 = prompt("Enter string value"); + var str2 = prompt("Enter string value"), result; + + /* string comparison */ + if (str1 < str2) { + document.writeln(str1 + " < " + str2); + } else if (str1 > str2) { + document.writeln(str1 + " > " + str2); + } else { + document.writeln("str1 equal to str2"); + } + + if (str1.includes(str2)) { + document.writeln("<br>" + str1 + " includes " + str2); + } else { + document.writeln("<br>" + str1 + " does not include " + str2); + } + + if (str1.startsWith("the")) { + document.writeln("<br>" + str1 + " starts with \"the\""); + } else { + document.writeln("<br>" + str1 + " does not start with \"the\""); + } + + if (str1.endsWith("ing")) { + document.writeln("<br>" + str1 + " ends with \"ing\""); + } else { + document.writeln("<br>" + str1 + " does not end with \"ing\""); + } + + document.writeln("<br>\"Fear the turtle\".indexOf(\"the\")→" + "Fear the turtle".indexOf("the")); + document.writeln("<br>\"Fear the turtle\".indexOf(\"boat\")→" + "Fear the turtle".indexOf("boat")); + document.writeln("<br>\"Fear the turtle\".indexOf(\"\")→" + "Fear the turtle".indexOf("")); + document.writeln("<br>\"Fear the turtle\".lastIndexOf(\"e\")→" + "Fear the turtle".lastIndexOf("e")); + + document.writeln("<br>" + str1 + ".repeat(5)→" + str1.repeat(5)); + document.writeln("<br>" + "\"Feartheturtle\".slice(2, 7) " + "Feartheturtle".slice(2, 7)); + document.writeln("<br>" + "\"Feartheturtle\".slice(-7) " + "Feartheturtle".slice(-7)); + + str1 = prompt("Enter comma separated string"); + var strArray = str1.split(","), i; + document.writeln("String components:<br>") + for (i = 0; i < strArray.length; i++) { + document.writeln(strArray[i] + " Length: " + strArray[i].length + "<br>"); + } + } + + </script> + </body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/JSConstructsICode/TemplateLiteral.html b/javascript_resources/code_examples/JSConstructsICode/TemplateLiteral.html new file mode 100755 index 0000000000000000000000000000000000000000..0b74c41860df528a3b1b21a30493811614535d14 --- /dev/null +++ b/javascript_resources/code_examples/JSConstructsICode/TemplateLiteral.html @@ -0,0 +1,41 @@ +<!doctype html> +<html> +<head> + <meta charset="utf-8" /> + <title>JS Example</title> +</head> + +<body> + <script> + "use strict"; + + main(); + + function getLetter(name, body, signature) { + let letter = `<br>Dear ${name}<br><br>`; + + letter += body + "<br><br>"; + letter += `Sincerely<br><br><br><br>${signature}`; + + return letter; + } + + function sum(x, y) { + return x + y; + } + + function main() { + let mascot = "turtle"; + let message = `Fear the ${mascot}`; + document.writeln(message); + + document.writeln(getLetter("Mary", "How are you doing?", "Peter")); + let x = 20, y = 30; + let totalCost = `<br>Total Cost is ${x * y}`; + document.writeln(totalCost); + let sumResult = `<br>Sum is ${sum(x, y)}`; + document.writeln(sumResult); + } + </script> +</body> +</html> diff --git a/javascript_resources/code_examples/JSConstructsICode/ValidityCheck.html b/javascript_resources/code_examples/JSConstructsICode/ValidityCheck.html new file mode 100755 index 0000000000000000000000000000000000000000..38e47e5ab61c3492737bafadeca1901f42e48e47 --- /dev/null +++ b/javascript_resources/code_examples/JSConstructsICode/ValidityCheck.html @@ -0,0 +1,38 @@ +<!doctype html> +<html> + <head> + <meta charset="UTF-8" /> + <title>Validity Check</title> + </head> + + <body> + <script> + "use strict"; + + /* calling main */ + main(); + + function main() { + var value, invalid; + + do { + value = prompt("Enter a number"); + if (value !== null) { + value = value.trim(); + invalid = (value === "" || isNaN(value)); + if (invalid) { + alert("You need to enter a number"); + } + } + } while(value !== null && invalid); + + if (value === null) { + alert("No value was provided") + } else { + alert("Value provided: " + value); + } + } + + </script> + </body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/JSConstructsICode/Wrapper.html b/javascript_resources/code_examples/JSConstructsICode/Wrapper.html new file mode 100755 index 0000000000000000000000000000000000000000..360a89a0f6eba99fbc8dbfad02777ad61a6fac77 --- /dev/null +++ b/javascript_resources/code_examples/JSConstructsICode/Wrapper.html @@ -0,0 +1,24 @@ +<!doctype html> +<html> + <head> + <meta charset="UTF-8" /> + <title>charAt Example</title> + </head> + <body> + <script> + "use strict"; + + var name = "Testudo"; + var letter = name.charAt(1); // autoboxing takes place + document.writeln("Letter is " + letter + "<br>"); + + // JavaScript engine processing for above code + name = "Testudo"; + var x = new String(name); + letter = x.charAt(1); + x = null; // x will be destroyed once is no longer needed + document.writeln("Letter is " + letter); + + </script> + </body> +</html> diff --git a/javascript_resources/code_examples/JSConstructsIICode/ArrowFunc.html b/javascript_resources/code_examples/JSConstructsIICode/ArrowFunc.html new file mode 100755 index 0000000000000000000000000000000000000000..bd6000f677e717daa3d33c9f2fa8b3e405134cdc --- /dev/null +++ b/javascript_resources/code_examples/JSConstructsIICode/ArrowFunc.html @@ -0,0 +1,29 @@ +<!doctype html> +<html> +<head> + <meta charset="utf-8" /> + <title>JS Example</title> +</head> + +<body> + <script> + "use strict"; + + let prod2 = x => x * 2; + let sum = (x, y, z) => x + y + z; + let initialValue = () => 1000; + let formatted = x => { x++; return `Value: ${x}`;} + + document.writeln(prod2(10)); + document.writeln(sum(10, 2, 4)); + document.writeln(initialValue()); + document.writeln(formatted(5) + "<br>") + + let scores = [10, 1, 44, 200]; + let sortedAttempt1 = scores.sort(); + document.writeln("sortedAttempt1: " + sortedAttempt1 + "<br>"); + let sortedAttempt2 = scores.sort((a, b) => a - b); + document.writeln("sortedAttempt2: " + sortedAttempt2 + "<br>"); + </script> +</body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/JSConstructsIICode/DefaultParameters.html b/javascript_resources/code_examples/JSConstructsIICode/DefaultParameters.html new file mode 100755 index 0000000000000000000000000000000000000000..eff149b6406655ef80acc4f2132f21c278447a0c --- /dev/null +++ b/javascript_resources/code_examples/JSConstructsIICode/DefaultParameters.html @@ -0,0 +1,36 @@ +<!doctype html> +<html> +<head> + <meta charset="utf-8" /> + <title>JS Example</title> +</head> + +<body> + <script> + "use strict"; + + main(); + + function main() { + task(); + task("Rose"); + task(25); + task("Kelly", 30, 20000); + taskOld(); + } + + function task(name = "John", age = 21, salary = special()) { + document.writeln(name + ' ' + age + ' ' + salary + "<br>"); + } + + function taskOld(name, age) { + name = name || "John"; + age = age || 21; + document.writeln("Old approach: " + name + ' ' + age + "<br>"); + } + function special() { + return 10000; + } + </script> +</body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/JSConstructsIICode/Destructuring.html b/javascript_resources/code_examples/JSConstructsIICode/Destructuring.html new file mode 100755 index 0000000000000000000000000000000000000000..b1c662e8961e210a3c11d38146d100909702ec9e --- /dev/null +++ b/javascript_resources/code_examples/JSConstructsIICode/Destructuring.html @@ -0,0 +1,33 @@ +<!doctype html> +<html> +<head> + <meta charset="utf-8" /> + <title>JS Example</title> +</head> + +<body> + <script> + "use strict"; + + main(); + + function main() { + /* destructuring arrays */ + let names = ["John", "Mary"]; + let [first, second] = names; + document.writeln("First: " + first + ", " + "Second: " + second + "<br>"); + + /* destructuring objects */ + let app = {name: "mapApp", developed: 1986}; + /* You must use the same property name; try name2 instead of name */ + let {name, developed} = app; /* Notice using { } */ + document.writeln("Name: " + name + ", " + "Developed: " + developed + "<br>"); + + /* swap */ + let a = 100, b = 200; + [b, a] = [a, b]; + document.writeln(a + ", " + b); + } + </script> +</body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/JSConstructsIICode/Map.html b/javascript_resources/code_examples/JSConstructsIICode/Map.html new file mode 100755 index 0000000000000000000000000000000000000000..1ecdf21b893a1e0d9fa29aadcc084731c710ffef --- /dev/null +++ b/javascript_resources/code_examples/JSConstructsIICode/Map.html @@ -0,0 +1,58 @@ +<!doctype html> +<html> +<head> + <meta charset="UTF-8" /> + <title>JS Example</title> +</head> + +<body> + <script> + "use strict"; + + let map = new Map(); + map.set("Mike", 88); + map.set("Rose", 90); + map.set("Kelly", 100); + + document.writeln("Map size: " + map.size + "<br>"); + document.writeln("Value for Rose: " + map.get("Rose") + "<br>"); + document.writeln("Value for NotInMap: " + map.get("NotInMap") + "<br>"); + document.writeln("map.has(\"Mike\"): " + map.has("Mike") + "<br>"); + let firstDeletion = map.delete("Rose"); + document.writeln("First deletion: " + firstDeletion + "<br>"); + let secondDeletion = map.delete("NotInMap"); + document.writeln("Second deletion: " + secondDeletion + "<br>"); + + document.writeln("Map Entries<br>"); + for (let entry of map) { + document.writeln(entry + "<br>"); + } + + document.writeln("Using keys()<br>"); + for (let key of map.keys()) { + document.writeln(key + "<br>"); + } + + document.writeln("Using values()<br>"); + for (let value of map.values()) { + document.writeln(value + "<br>"); + } + + document.writeln("Using map.entries<br>"); + for (let entry of map.entries()) { + document.writeln(entry[0] + ", " + entry[1] + "<br>"); + } + + document.writeln("Using map.entries(2)<br>"); + for (let [key, value] of map.entries()) { + document.writeln(key + ", " + value + "<br>"); + } + + document.writeln("Another Iteration<br>"); + for (let [key, value] of map) { + document.writeln(key + ", " + value + "<br>"); + } + + </script> +</body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/JSConstructsIICode/RestParameters.html b/javascript_resources/code_examples/JSConstructsIICode/RestParameters.html new file mode 100755 index 0000000000000000000000000000000000000000..1abab893f3e7f8d1dda1baac9282cba43c9ac9b5 --- /dev/null +++ b/javascript_resources/code_examples/JSConstructsIICode/RestParameters.html @@ -0,0 +1,28 @@ +<!doctype html> +<html> +<head> + <meta charset="utf-8" /> + <title>JS Example</title> +</head> + +<body> + <script> + "use strict"; + + main(); + + function main() { + partyInfo("FirstParty", "John", "Alice", "Peter"); + partyInfo("SecondParty", "Mike", "Sandra"); + } + + function partyInfo(name, director, ...others) { + document.writeln(name + " " + director + "<br>"); + for (let i = 0; i < others.length; i++){ + document.writeln(others[i]); + } + document.writeln("<br>"); + } + </script> +</body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/JSConstructsIICode/Set.html b/javascript_resources/code_examples/JSConstructsIICode/Set.html new file mode 100755 index 0000000000000000000000000000000000000000..5daba62772e94d4fd25693be57c09a6eeb7857a8 --- /dev/null +++ b/javascript_resources/code_examples/JSConstructsIICode/Set.html @@ -0,0 +1,46 @@ +<!doctype html> +<html> +<head> + <meta charset="utf-8" /> + <title>JS Example</title> +</head> + +<body> + <script> + "use strict"; + + /* Notice the use of const instead of let */ + const mySet = new Set(); + const student = {name: "Mike", id: 10}; + const student2 = {name: "Rose", id: 20}; + mySet.add(150); + mySet.add(student).add(student2); /* add is chainable */ + + document.writeln("150 part of the set? " + mySet.has(150) + "<br>"); + document.writeln("Set size: " + mySet.size + "<br>"); + document.writeln("Set Entries<br>"); + for (let entry of mySet) { + document.writeln(entry + "<br>"); + } + + document.writeln("After deleting entry<br>"); + mySet.delete(student); + for (let entry of mySet) { + document.writeln(entry + "<br>"); + } + + document.writeln("After clearing the set<br>"); + mySet.clear(); + for (let entry of mySet) { + document.writeln(entry + "<br>"); + } + + document.writeln("Set based on array<br>"); + let anotherSet = new Set(["C", "JavaScript", "Pascal"]); + for (const entry of anotherSet) { + document.writeln(entry); + } + + </script> +</body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/JSConstructsIICode/SpreadOperator.html b/javascript_resources/code_examples/JSConstructsIICode/SpreadOperator.html new file mode 100755 index 0000000000000000000000000000000000000000..6df306c6770650da9956ce10373ffdc466233b4d --- /dev/null +++ b/javascript_resources/code_examples/JSConstructsIICode/SpreadOperator.html @@ -0,0 +1,36 @@ +<!doctype html> +<html> +<head> + <meta charset="utf-8" /> + <title>JS Example</title> +</head> + +<body> + <script> + "use strict"; + + function process(start, end, delta, message) { + document.writeln(message + "<br>"); + for (let i = start; i <= end; i += delta) { + document.writeln(i + " "); + } + document.writeln("<br>"); + } + + process(1, 10, 2, "First"); + process(...[1, 10, 2, "Second"]); /* will not work without spread operator */ + process(1, ...[10, 2], "Third"); /* will not work without spread operator */ + + let part1 = ["C", "Java"]; + let part2 = ["Python"]; + let combined = ["Pascal", ...part1, ...part2]; + document.writeln(combined.join() + "<br>"); + + document.writeln("Converting elements of iterable into array<br>"); + let mySet = new Set(); + mySet.add("Mike").add("Rose"); + let myArray = [...mySet]; + document.writeln(myArray.join()); + </script> +</body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/JSConstructsIICode/Symbol.html b/javascript_resources/code_examples/JSConstructsIICode/Symbol.html new file mode 100755 index 0000000000000000000000000000000000000000..d14a0011d48f0ed18645e3ecd7bb41e2c2f6b6cf --- /dev/null +++ b/javascript_resources/code_examples/JSConstructsIICode/Symbol.html @@ -0,0 +1,42 @@ +<!doctype html> +<html> +<head> + <meta charset="UTF-8" /> + <title>JS Example</title> +</head> + +<body> + <script> + "use strict"; + + let sym = Symbol("firstSymbol"); + + document.writeln(String(sym) + "<br>"); /* implicit convertion does not work */ + document.writeln(sym.toString() + "<br>"); /* implicit convertion does not work */ + + let sym2 = Symbol("firstSymbol"); + if (sym === sym2) { + document.writeln("Symbols the same<br>"); + } else { + document.writeln("Symbols are different<br>"); + } + document.writeln("typeof sym: " + typeof sym + "<br>"); + + /* symbol as property key */ + let KEY_TO_USE = Symbol(); + let myObj = { name: "Mike", [KEY_TO_USE]: 789 }; + document.writeln("myObj[KEY_TO_USE]: " + myObj[KEY_TO_USE]); + + let MESSAGE = Symbol(); + let testudo = { + [MESSAGE]() { return 'Fear the turtle'; } + }; + document.writeln("<br>Message is " + testudo[MESSAGE]() + "<br>"); + + const COLOR_RED = Symbol("Red"); + const COLOR_BLUE = Symbol("Blue"); + document.writeln("Boolean(COLOR_RED): " + Boolean(COLOR_RED) + "<br>"); + + </script> +</body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/JSConstructsIICode/WeakMap.html b/javascript_resources/code_examples/JSConstructsIICode/WeakMap.html new file mode 100755 index 0000000000000000000000000000000000000000..601048080dcd79b06af4e89fe4fe18290d7c5d0e --- /dev/null +++ b/javascript_resources/code_examples/JSConstructsIICode/WeakMap.html @@ -0,0 +1,23 @@ +<!doctype html> +<html> +<head> + <meta charset="UTF-8" /> + <title>JS Example</title> +</head> + +<body> + <script> + "use strict"; + + function TerpObject() { + this.data = new Array(300000); + } + + window.obj = new TerpObject(); + let map = new Map(); /* Change to WeakMap to see memory effect */ + map.set(window.obj, 1); + delete window.obj; + + </script> +</body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/JSIntroCode/InputOutput.html b/javascript_resources/code_examples/JSIntroCode/InputOutput.html new file mode 100755 index 0000000000000000000000000000000000000000..dde2debbad8c65ca8d87eab7336d8a381e91b197 --- /dev/null +++ b/javascript_resources/code_examples/JSIntroCode/InputOutput.html @@ -0,0 +1,27 @@ +<!doctype html> +<html> + <head> + <meta charset="utf-8" /> + <title>Input/Output</title> + </head> + + <body> + <script> + "use strict"; + + document.writeln("<strong>" + "Bill Calculation System</strong><br />"); + + var costPerCredit, numberOfCredits, tuitionCost; + + /* Reading values from the user */ + costPerCredit = Number(prompt("Enter cost per credit:")); + numberOfCredits = prompt("Enter number of credits:"); + + /* Computing cost */ + tuitionCost = costPerCredit * numberOfCredits; + + document.writeln("<strong>Tuition Cost: </strong>" + tuitionCost); + + </script> + </body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/JSIntroCode/Network.html b/javascript_resources/code_examples/JSIntroCode/Network.html new file mode 100755 index 0000000000000000000000000000000000000000..770344d52cdd18bbfe186b009b5c8914cd311173 --- /dev/null +++ b/javascript_resources/code_examples/JSIntroCode/Network.html @@ -0,0 +1,32 @@ +<!doctype html> +<html> + <head> + <meta charset="utf-8" /> + <title>Network</title> + </head> + + <body> + <script> + "use strict"; + + /* You need to allow browser pop-ups to run this program */ + var network = prompt("Enter network name (abc, cbs)"); + alert("Network specified is: " + network); + var webSite; + + switch(network) { + case "abc": + webSite = "http://www.abc.com/"; + break; + case "cbs": + webSite = "http://www.cbs.com/"; + break; + default: + webSite = "http://www.cnn.com/"; + break; + } + window.open(webSite); + + </script> + </body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/JSIntroCode/SqrTable.html b/javascript_resources/code_examples/JSIntroCode/SqrTable.html new file mode 100755 index 0000000000000000000000000000000000000000..85d9f4279d25c200e211a89ebfc1fc401cb52b47 --- /dev/null +++ b/javascript_resources/code_examples/JSIntroCode/SqrTable.html @@ -0,0 +1,34 @@ +<!doctype html> +<html> + <head> + <meta charset="utf-8" /> + <title>Square Root Table</title> + </head> + +<body> + <script> + "use strict"; + + var currValue = 0, maximumValue; + + /* Reading a value from the user and verifying is correct */ + do { + maximumValue = Number(prompt("Enter a value")); + if (maximumValue < 0) + alert("Invalid value: " + maximumValue); + } while(maximumValue < 0); + + /* Generating the table */ + document.writeln("<table border=\"10\">"); + document.writeln("<caption><strong>Square Root Table</strong></caption>"); + document.writeln("<tr><th>Number</th><th>Square Root</th></tr>"); + + while (currValue <= maximumValue) { + document.writeln("<tr><td>" + currValue + "</td><td>" + Math.sqrt(currValue) + "</td></tr>"); + currValue = currValue + 1; + } + + document.writeln("</table>"); + </script> +</body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/JSIntroCode/Strict.html b/javascript_resources/code_examples/JSIntroCode/Strict.html new file mode 100755 index 0000000000000000000000000000000000000000..3a6b9900db4deb5a783ede97eb5b0d6e0db47c05 --- /dev/null +++ b/javascript_resources/code_examples/JSIntroCode/Strict.html @@ -0,0 +1,20 @@ +<!doctype html> +<head> + <meta charset="utf-8" /> + <title>JS Example</title> +</head> + +<body> + <script> + "use strict"; + + /* strict mode requires var */ + var bookTitle = "JavaScript"; + + /* Following variable name not allowed in strict mode */ + /* var interface = 10; */ + alert(bookTitle); + + </script> +</body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/JSIntroCode/TemplateJS.html b/javascript_resources/code_examples/JSIntroCode/TemplateJS.html new file mode 100755 index 0000000000000000000000000000000000000000..45c74abcef0d4166db58d043a69fb43d7e863774 --- /dev/null +++ b/javascript_resources/code_examples/JSIntroCode/TemplateJS.html @@ -0,0 +1,15 @@ +<!doctype html> +<html> + <head> + <meta charset="utf-8" /> + <title>JavaScript Program Template</title> + </head> + + <body> + <script> + "use strict"; + + /* Your JavaScript here */ + </script> + </body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/JSObjectsCode/AddingProperties.html b/javascript_resources/code_examples/JSObjectsCode/AddingProperties.html new file mode 100755 index 0000000000000000000000000000000000000000..5ddc6453ea78831132afe9dd8fd2fb785e5d6253 --- /dev/null +++ b/javascript_resources/code_examples/JSObjectsCode/AddingProperties.html @@ -0,0 +1,36 @@ +<!doctype html> +<html> + <head> + <meta charset="utf-8" /> + <title>Adding Properties</title> + </head> + + <body> + <script> + "use strict"; + + main(); + + function main() { + var sale = new Object(); + + /* Reading the items, number of items */ + var wantAnotherItem, item, numberOfItems; + + do { + item = prompt("Enter name of item you want to buy."); + numberOfItems = prompt("Enter number of items you want to buy."); + sale[item] = numberOfItems; + wantAnotherItem = window.confirm("Do you want to buy another item?"); + } while (wantAnotherItem); + + /* Report about bought items */ + var report = "Items bought\n"; + for (var propertyName in sale) { + report += propertyName + "-->" + sale[propertyName] + "\n"; + } + alert(report); + } + </script> + </body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/JSObjectsCode/ConstructorFunction.html b/javascript_resources/code_examples/JSObjectsCode/ConstructorFunction.html new file mode 100755 index 0000000000000000000000000000000000000000..a54bfa81e17f93f4b1f7b7d68be44984730567ae --- /dev/null +++ b/javascript_resources/code_examples/JSObjectsCode/ConstructorFunction.html @@ -0,0 +1,33 @@ +<!doctype html> +<html> +<head> + <meta charset="utf-8" /> + <title>JS Example</title> +</head> + +<html> +<body> + <script> + main(); + + function main() { + var comp1 = new Computer("PC", 30); + var comp2 = new Computer("Mac", 50); + document.writeln("Comp1 model: " + comp1.model + "<br>"); + document.writeln("Comp1 memory: " + comp1.getMemory() + "<br>"); + comp1.setMemory(100); + document.writeln("Comp1 memory: " + comp1.memory + "<br>"); + comp1.monitor = "hd"; /* Does not affect comp2 */ + } + + /* Constructor function */ + function Computer(modelIn, memoryIn) { + this.model = modelIn; + this.memory = memoryIn; + this.getMemory = function() { return this.memory; }; /* we need this.memory */ + this.setMemory = function(memoryValue) { this.memory = memoryValue; } + } + + </script> +</body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/JSObjectsCode/ConstructorPattern.html b/javascript_resources/code_examples/JSObjectsCode/ConstructorPattern.html new file mode 100755 index 0000000000000000000000000000000000000000..49857a190d66531af8c1974c8bf9c5373e029646 --- /dev/null +++ b/javascript_resources/code_examples/JSObjectsCode/ConstructorPattern.html @@ -0,0 +1,37 @@ +<!doctype html> +<html> +<head> + <meta charset="utf-8" /> + <title>JS Example</title> +</head> + +<body> + <script> + main(); + + function main() { + var s1 = new Singer("Psy", "South Korea"); + s1.info(); + document.writeln("Name: " + s1.name + "<br>"); + + var s2 = new Singer("Noolio", "AVW"); + s2.info(); + + /* Calling as function, not constructor */ + Singer("MCNerdson", "CSCI"); + info(); // window.info(); + document.writeln("window.name: " + window.name + "<br>"); + } + + function Singer(name, mainLocation) { // Convention to use capital S + this.name = name; + this.mainLocation = mainLocation; + this.info = function() { + document.writeln("Name: " + this.name); + document.writeln(", MainLocation: " + this.mainLocation + "<br />"); + }; + } + + </script> +</body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/JSObjectsCode/DefaultPattern.html b/javascript_resources/code_examples/JSObjectsCode/DefaultPattern.html new file mode 100755 index 0000000000000000000000000000000000000000..5f3a936e12591ccb9b79806abe54e2f6f40e693b --- /dev/null +++ b/javascript_resources/code_examples/JSObjectsCode/DefaultPattern.html @@ -0,0 +1,44 @@ +<!doctype html> +<html> +<head> + <meta charset="utf-8" /> + <title>JS Example</title> +</head> + +<body> + <script> + + /* constructor function */ + function Student(name, credits, courses) { + this.name = name; + this.credits = credits; + this.courses = courses; + } + + /* Prototype for all objects created by the Student constructor function */ + Student.prototype = { + constructor: Student, /* Student is the constructor function that creates the object's prototype */ + college: "UMCP", + info: function() { + document.writeln("Name: " + this.name); + document.writeln(", Credits: " + this.credits); + document.writeln(", Courses: " + this.courses + " "); + document.writeln(", College: " + this.college + "<br />"); + } + }; + + main(); + + function main() { + var s1 = new Student("Kelly", 15, [414, 420]); + s1.info(); + s1.courses[2] = [830]; + s1.info(); + + var s2 = new Student("Peter", 12, [314, 320]); + s2.info(); + } + + </script> +</body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/JSObjectsCode/FuncApplyCallBind.html b/javascript_resources/code_examples/JSObjectsCode/FuncApplyCallBind.html new file mode 100755 index 0000000000000000000000000000000000000000..e1b5ab9e2cf2605a040d8eac24fc366c483e7893 --- /dev/null +++ b/javascript_resources/code_examples/JSObjectsCode/FuncApplyCallBind.html @@ -0,0 +1,56 @@ +<!doctype html> +<html> +<head> + <meta charset="UTF-8" /> + <title>JS Example</title> +</head> + +<body> + <script> + window.terpConstant = 100; + + main(); + + function main() { + document.writeln("product(1, 2): " + product(1, 2) + "<br>"); + document.writeln("applyArguments(3, 4): " + applyArguments(3, 4) + "<br>"); + document.writeln("applyArray(2, 3):" + applyArray(2, 3) + "<br>"); + document.writeln("applyAndObject(3, 5): " + applyAndObject(3, 5) + "<br>"); + document.writeln("callExample(6, 5): " + callExample(6, 5) + "<br>"); + + document.writeln("bindExample(): "); + bindExample(); + } + + function product(x, y) { + return x * y * this.terpConstant; + } + + function applyArguments(x, y) { + return product.apply(this, arguments); + } + + function applyArray(x, y) { + return product.apply(this, [x, y]); + } + + function applyAndObject(x, y) { + var obj = new Object(); + obj.terpConstant = 1000; + return product.apply(obj, [x, y]); + } + + function callExample(x, y) { + return product.call(this, x, y); + } + + function bindExample() { + var obj = new Object(); + obj.terpConstant = 9; + + var productObj = product.bind(obj); + document.writeln(productObj(2, 5)); + } + </script> +</body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/JSObjectsCode/FuncArguments.html b/javascript_resources/code_examples/JSObjectsCode/FuncArguments.html new file mode 100755 index 0000000000000000000000000000000000000000..dfd1c0da5ef1a33cfa284d49e2d3841a83f27f07 --- /dev/null +++ b/javascript_resources/code_examples/JSObjectsCode/FuncArguments.html @@ -0,0 +1,26 @@ +<!doctype html> +<html> +<head> + <meta charset="UTF-8" /> + <title>JS Example</title> +</head> + +<body> + <script> + main(); + + function processData(x, y) { + document.writeln(arguments.length); + document.writeln(arguments[0]); + document.writeln(arguments[1] + "<hr>"); + + if (x !== 0) { + arguments.callee(--x, --y); /* recursive call */ + } + } + function main() { + processData(3, 4); + } + </script> +</body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/JSObjectsCode/FuncLength.html b/javascript_resources/code_examples/JSObjectsCode/FuncLength.html new file mode 100755 index 0000000000000000000000000000000000000000..d0217b3724a6d1c9eef99d1078be2fc19df12869 --- /dev/null +++ b/javascript_resources/code_examples/JSObjectsCode/FuncLength.html @@ -0,0 +1,29 @@ +<!doctype html> +<html> +<head> + <meta charset="UTF-8" /> + <title>JS Example</title> +</head> + +<body> + <script> + main(); + + function main() { + document.writeln("generateResults.length: " + generateResults.length + "<br>"); + document.writeln("moreResults.length: " + moreResults.length + "<br>"); + document.writeln("generateResults.toString(): " + generateResults.toString() + "<br>"); + document.writeln("generateResults.valueOf(): " + generateResults.valueOf() + "<br>"); + + } + + function generateResults(x) { + document.writeln(x); + } + + function moreResults(x, y) { + document.writeln(x, y); + } + </script> +</body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/JSObjectsCode/FuncThis.html b/javascript_resources/code_examples/JSObjectsCode/FuncThis.html new file mode 100755 index 0000000000000000000000000000000000000000..daced67e64f828e353c2f92ae397ba466927dd69 --- /dev/null +++ b/javascript_resources/code_examples/JSObjectsCode/FuncThis.html @@ -0,0 +1,32 @@ +<!doctype html> +<html> +<head> + <meta charset="UTF-8" /> + <title>JS Example</title> +</head> + +<body> + <script> + window.singer = "Psy"; + var obj = new Object(); + obj.singer = "NP"; + + main(); + + function main() { + singerInfo(); + document.writeln("Using object<br />"); + + var obj = new Object(); + obj.singer = "Coolio"; + obj.singerInfo = singerInfo; + obj.singerInfo(); + } + + function singerInfo() { + document.writeln(this.singer + "<br />"); + } + + </script> +</body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/JSObjectsCode/Inheritance.html b/javascript_resources/code_examples/JSObjectsCode/Inheritance.html new file mode 100755 index 0000000000000000000000000000000000000000..1298502790fa56840104ca0e212ed7d965deaa82 --- /dev/null +++ b/javascript_resources/code_examples/JSObjectsCode/Inheritance.html @@ -0,0 +1,53 @@ +<!doctype html> +<html> +<head> + <meta charset="utf-8" /> + <title>JS Example</title> +</head> + +<body> + <script> + + /* constructor function */ + function Student(name, credits, courses) { + this.name = name; + this.credits = credits; + this.courses = courses; + } + + Student.prototype = { + constructor: Student, + college: "UMCP", + info: function() { + document.writeln("Name: " + this.name); + document.writeln(", Credits: " + this.credits); + document.writeln(", Courses: " + this.courses + " "); + document.writeln(", College: " + this.college + "<br />"); + } + }; + + function GradStudent(name, credits, courses, advisor) { + /* Calls super class constructor */ + Student.call(this, name, credits, courses); + + this.advisor = advisor; + } + + + GradStudent.prototype = new Student(); + GradStudent.prototype.constructor = GradStudent; + GradStudent.prototype.getAdvisor = function() { return this.advisor; } + + + main(); + function main() { + var gs1 = new GradStudent("Kelly", 15, [414, 420], "Dr. Smith"); + gs1.info(); + document.writeln(gs1.getAdvisor() + "<br>"); + document.writeln("Name: " + gs1.name + "<br>"); + document.writeln("College: " + gs1.college + "<br>"); + } + + </script> +</body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/JSObjectsCode/JSONExample.html b/javascript_resources/code_examples/JSObjectsCode/JSONExample.html new file mode 100755 index 0000000000000000000000000000000000000000..0111593fdf90746dfb87eea0da21f06429c21174 --- /dev/null +++ b/javascript_resources/code_examples/JSObjectsCode/JSONExample.html @@ -0,0 +1,31 @@ +<!doctype html> +<head> + <meta charset="utf-8" /> + <title>JS Example</title> +</head> + +<body> + <script> + "use strict"; + main(); + + function main() { + var obj = { + name: "Mary", + age: 45, + salary: 20000.00 + }; + + var str = JSON.stringify(obj); + document.writeln(str); + + var new_obj = JSON.parse(str); + document.writeln("<h2>After Parsing Object</h2>") + for (var prop in new_obj) { + document.writeln(prop + "--> " + new_obj[prop] + "<br>"); + } + } + + </script> +</body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/JSObjectsCode/ObjectCreate.html b/javascript_resources/code_examples/JSObjectsCode/ObjectCreate.html new file mode 100755 index 0000000000000000000000000000000000000000..fd2a561cb4e8317e1b3a026ccdc590ac681ff02f --- /dev/null +++ b/javascript_resources/code_examples/JSObjectsCode/ObjectCreate.html @@ -0,0 +1,66 @@ +<!doctype html> +<html> +<head> + <meta charset="utf-8" /> + <title>JS Example</title> +</head> + +<body> + <script> + main(); + + function main() { + // Generic dessert + var dessert = { + minimumCalories: 100, + displayDessert: function() { + document.writeln(this.name + ", " + this.calories + "<br>"); + } + }; + + document.writeln("<h2>dessert Properties</h2>"); + document.writeln("toString: " + dessert.toString() + "<br>"); + var propertiesArray = getAllProperties(dessert); + for (var i = 0; i < propertiesArray.length; i++) { + document.writeln(propertiesArray[i] + "<br>"); + } + if (Object.prototype.isPrototypeOf(dessert)) { + document.writeln("Object.prototype is prototype of dessert<br>"); + } + + // Creating new type (cheesecake) + var cheesecake = Object.create(dessert); + cheesecake.name = "cheesecake"; + cheesecake.calories = 750; + cheesecake.displayDessert(); + + document.writeln("<h2>Cheesecake Properties</h2>"); + var propertiesArray = getAllProperties(cheesecake); + for (var i = 0; i < propertiesArray.length; i++) { + document.writeln(propertiesArray[i] + "<br>"); + } + + if (dessert.isPrototypeOf(cheesecake)) { + document.writeln("dessert is prototype of cheesecake<br>"); + } + if (Object.prototype.isPrototypeOf(cheesecake)) { + document.writeln("Object.prototype is prototype of cheesecake<br>"); + } + } + + /* Reference: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Working_with_Objects */ + function getAllProperties(src){ + var currObj, answer = []; + + /* Traversing the prototype chain */ + currObj = src; + while (currObj !== null) { + answer = answer.concat(Object.getOwnPropertyNames(currObj)); + currObj = Object.getPrototypeOf(currObj); + } + + return answer; + } + </script> +</body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/JSObjectsCode/Objects.html b/javascript_resources/code_examples/JSObjectsCode/Objects.html new file mode 100755 index 0000000000000000000000000000000000000000..6ebfeadc1b0d45d6903e8c0eb693669ac868da50 --- /dev/null +++ b/javascript_resources/code_examples/JSObjectsCode/Objects.html @@ -0,0 +1,67 @@ +<!doctype html> +<html> +<head> + <meta charset="utf-8" /> + <title>JS Example</title> +</head> + +<body> + <script> + main(); + + function main() { + /* Alternatives for creating an empty object */ + var emptyObject1 = new Object(); + var emptyObject2 = new Object(undefined); + var emptyObject3 = new Object(null); + + /* Boolean Object alternative */ + var booleanObject1 = new Object(true); + var booleanObject2 = new Boolean(true); + + /* Using Object constructor for person object */ + var person1 = new Object(); + /* Adding properties */ + + person1.name = "John"; + person1.age = 45; + person1.school = umcpSchool; + printPerson(person1); + + /* Using object initializer/literal notation */ + var person2 = { + name: "Mary", + age: 30, + school: umcpSchool, + bestFriend: person1 + }; + + printPerson(person2); + + var exam = { + semester: "fall", + "difficulty-level": 10, + 2: "midterm2" + + }; + + // NOT VALID alert("First form: " + exam.difficulty-level); + document.writeln("difficulty-level: " + exam["difficulty-level"] + "<br>"); + document.writeln("exam[2]: " + exam[2] + "<br>"); + } + + function printPerson(personParam) { + document.writeln("Name: " + personParam.name + ", "); + document.writeln("Age: " + personParam.age + ", "); + if (personParam.bestFriend != undefined) { + document.writeln("Best Friend: " + personParam.bestFriend.name + ", "); + } + personParam.school(); + } + + function umcpSchool() { + document.writeln("University of MD College Park" + "<br>"); + } + </script> +</body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/JSObjectsCode/PrototypePattern.html b/javascript_resources/code_examples/JSObjectsCode/PrototypePattern.html new file mode 100755 index 0000000000000000000000000000000000000000..58d7392750520a4a39125f08c95ef5649b0e3098 --- /dev/null +++ b/javascript_resources/code_examples/JSObjectsCode/PrototypePattern.html @@ -0,0 +1,37 @@ +<!doctype html> +<html> +<head> + <meta charset="utf-8" /> + <title>JS Example</title> +</head> + +<body> + <script> + + /* constructor function */ + function Student() { + } + + Student.prototype.name = "Jose"; + Student.prototype.credits = 15; + Student.prototype.courses =[424, 430]; + Student.prototype.info = function() { + document.writeln("Name: " + this.name); + document.writeln(", Credits: " + this.credits); + document.writeln(", Courses: " + this.courses + "<br />"); + }; + + main(); + + function main() { + var s1 = new Student(); + s1.info(); + s1.courses[2] = 414; + + var s2 = new Student(); + s2.info(); // Notice that 414 has also been added here + } + + </script> +</body> +</html> \ No newline at end of file diff --git a/389N_stuff/code_examples/NodeJSCode/courseInfo.txt b/javascript_resources/code_examples/NodeJSCode/courseInfo.txt similarity index 100% rename from 389N_stuff/code_examples/NodeJSCode/courseInfo.txt rename to javascript_resources/code_examples/NodeJSCode/courseInfo.txt diff --git a/389N_stuff/code_examples/NodeJSCode/fibonacciAsync.js b/javascript_resources/code_examples/NodeJSCode/fibonacciAsync.js similarity index 100% rename from 389N_stuff/code_examples/NodeJSCode/fibonacciAsync.js rename to javascript_resources/code_examples/NodeJSCode/fibonacciAsync.js diff --git a/389N_stuff/code_examples/NodeJSCode/imageServer.html b/javascript_resources/code_examples/NodeJSCode/imageServer.html similarity index 100% rename from 389N_stuff/code_examples/NodeJSCode/imageServer.html rename to javascript_resources/code_examples/NodeJSCode/imageServer.html diff --git a/389N_stuff/code_examples/NodeJSCode/imageServer.js b/javascript_resources/code_examples/NodeJSCode/imageServer.js similarity index 100% rename from 389N_stuff/code_examples/NodeJSCode/imageServer.js rename to javascript_resources/code_examples/NodeJSCode/imageServer.js diff --git a/389N_stuff/code_examples/NodeJSCode/images/umcp.jpg b/javascript_resources/code_examples/NodeJSCode/images/umcp.jpg similarity index 100% rename from 389N_stuff/code_examples/NodeJSCode/images/umcp.jpg rename to javascript_resources/code_examples/NodeJSCode/images/umcp.jpg diff --git a/389N_stuff/code_examples/NodeJSCode/readFileContentsAsync.js b/javascript_resources/code_examples/NodeJSCode/readFileContentsAsync.js similarity index 100% rename from 389N_stuff/code_examples/NodeJSCode/readFileContentsAsync.js rename to javascript_resources/code_examples/NodeJSCode/readFileContentsAsync.js diff --git a/389N_stuff/code_examples/NodeJSCode/readFileContentsSync.js b/javascript_resources/code_examples/NodeJSCode/readFileContentsSync.js similarity index 100% rename from 389N_stuff/code_examples/NodeJSCode/readFileContentsSync.js rename to javascript_resources/code_examples/NodeJSCode/readFileContentsSync.js diff --git a/389N_stuff/code_examples/NodeJSCode/timer.js b/javascript_resources/code_examples/NodeJSCode/timer.js similarity index 100% rename from 389N_stuff/code_examples/NodeJSCode/timer.js rename to javascript_resources/code_examples/NodeJSCode/timer.js diff --git a/389N_stuff/code_examples/NodeJSCode/webServer.js b/javascript_resources/code_examples/NodeJSCode/webServer.js similarity index 100% rename from 389N_stuff/code_examples/NodeJSCode/webServer.js rename to javascript_resources/code_examples/NodeJSCode/webServer.js diff --git a/389N_stuff/code_examples/NodeJSCode/webServerControl.js b/javascript_resources/code_examples/NodeJSCode/webServerControl.js similarity index 100% rename from 389N_stuff/code_examples/NodeJSCode/webServerControl.js rename to javascript_resources/code_examples/NodeJSCode/webServerControl.js diff --git a/javascript_resources/code_examples/ObjsAPISCode/DrawingPointer.html b/javascript_resources/code_examples/ObjsAPISCode/DrawingPointer.html new file mode 100755 index 0000000000000000000000000000000000000000..25a799abbd21a001a3a9a3bc18378ab902a0b544 --- /dev/null +++ b/javascript_resources/code_examples/ObjsAPISCode/DrawingPointer.html @@ -0,0 +1,51 @@ +<!doctype html> +<html> + <head> + <meta charset="utf-8" /> + <title>Mouse Drawing</title> + </head> + + <body> + <canvas id="canvas" width="400" height="300"></canvas> + + <script> + "use strict"; + + var color = "red"; + var sideLength = 5; + + main(); + + function main() { + document.onmousemove = processMousePosition; + document.onkeypress = changeColor; + document.writeln("<p>"); + document.writeln("<strong>Move the mouse in the above area."); + document.writeln("Press enter to change to erase mode;"); + document.writeln("Press enter again to change to drawing mode</strong>"); + document.writeln("</p>"); + } + + function processMousePosition(evt) { + draw(evt.pageX, evt.pageY); + } + + function changeColor() { + if (color === "red") { + color = "white"; + sideLength = 500; + } else { + color = "red"; + sideLength = 5; + } + } + + function draw(xPos, yPos) { + var context = document.getElementById("canvas").getContext("2d"); + + context.fillStyle = color; + context.fillRect(xPos, yPos, sideLength, sideLength); + } + </script> + </body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/ObjsAPISCode/Errors1.html b/javascript_resources/code_examples/ObjsAPISCode/Errors1.html new file mode 100755 index 0000000000000000000000000000000000000000..6ceb17e9b99b165443934419bafadbd914e13207 --- /dev/null +++ b/javascript_resources/code_examples/ObjsAPISCode/Errors1.html @@ -0,0 +1,24 @@ +<!doctype html> +<head> + <meta charset="utf-8" /> + <title>JS Example</title> +</head> + +<body> + <script> + "use strict"; + + main(); + + function main() { + try { + alert("About to access method"); + window.terps(); + } catch(error) { + alert("Problem: " + error.message); + } + } + + </script> +</body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/ObjsAPISCode/Errors2.html b/javascript_resources/code_examples/ObjsAPISCode/Errors2.html new file mode 100755 index 0000000000000000000000000000000000000000..a2bab6a2c7d68cd1380c37c513149a6efd15a247 --- /dev/null +++ b/javascript_resources/code_examples/ObjsAPISCode/Errors2.html @@ -0,0 +1,47 @@ +<!doctype html> +<head> + <meta charset="utf-8" /> + <title>JS Example</title> +</head> + +<body> + <script> + "use strict"; + main(); + + function main() { + try { + var option = prompt("Enter 1, 2, 3 for error case"); + + switch (option) { + case "1": + var x = new Array(-4); + break; + case "2": + var x = y; + break; + case "3": + var k = 234; + var w = k.charAt(0); + break; + } + } catch(error) { + var messageDes; + + if (error instanceof RangeError) { + messageDes = "Range: "; + } else if (error instanceof ReferenceError) { + messageDes = "Reference: "; + } else if (error instanceof TypeError) { + messageDes = "Type: " + } else { + messageDes = "Other: "; + } + + alert(messageDes + error.message); + } + } + + </script> +</body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/ObjsAPISCode/Errors3.html b/javascript_resources/code_examples/ObjsAPISCode/Errors3.html new file mode 100755 index 0000000000000000000000000000000000000000..78b22c33c24056f932ba9553d744ddaa3d40702e --- /dev/null +++ b/javascript_resources/code_examples/ObjsAPISCode/Errors3.html @@ -0,0 +1,33 @@ +<!doctype html> +<head> + <meta charset="utf-8" /> + <title>JS Example</title> +</head> + +<body> + <script> + "use strict"; + + function InvalidDataError(message) { + this.name = "InvalidDataError"; + this.message = message; + } + InvalidDataError.prototype = new Error(); + + main(); + + function main() { + try { + var value = Number(prompt("Enter positive (or 0) value")); + if (value < 0) { + throw new InvalidDataError("positive value expected"); + } else { + alert("Square Root: " + Math.sqrt(value)); + } + } catch(error) { + alert(error.message); + } + } + </script> +</body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/ObjsAPISCode/ExtensibleSealed.html b/javascript_resources/code_examples/ObjsAPISCode/ExtensibleSealed.html new file mode 100755 index 0000000000000000000000000000000000000000..39a90c60b5fa5603eefc62687ba42721047c087d --- /dev/null +++ b/javascript_resources/code_examples/ObjsAPISCode/ExtensibleSealed.html @@ -0,0 +1,45 @@ +<!doctype html> +<head> + <meta charset="utf-8" /> + <title>JS Example</title> +</head> + +<body> + <script> + "use strict"; + main(); + + function main() { + var student = new Object(); + student.name = "Rose"; + Object.preventExtensions(student); + + // NOT Allowed student.gpa = 3.2; + student.name = "Mark"; + document.writeln("<br />gpa: " + student.gpa); + document.writeln("<br />name: " + student.name); + + /* We can delete properties */ + delete student.name; + document.writeln("<br />name (after deleting): " + student.name); + + /* Sealing the object */ + var game = new Object(); + game.name = "SuperTetris"; + Object.seal(game); + + /* Ignored */ + /* NOT Allowed game.year = 2000; */ + /* NOT Allowed delete game.name; */ + + document.writeln("<br />Game name: " + game.name); + document.writeln("<br />Extensible: " + Object.isExtensible(game)); + document.writeln("<br />Sealed: " + Object.isSealed(game)); + + /* Can still change the value */ + game.name = "AnotherTetris"; + document.writeln("<br />After changing name: " + game.name); + } + </script> +</body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/ObjsAPISCode/FileReading/FileReadingImage.html b/javascript_resources/code_examples/ObjsAPISCode/FileReading/FileReadingImage.html new file mode 100755 index 0000000000000000000000000000000000000000..3ec7e2a223a2b9879e462f9792423c133ca302a6 --- /dev/null +++ b/javascript_resources/code_examples/ObjsAPISCode/FileReading/FileReadingImage.html @@ -0,0 +1,38 @@ +<!doctype html> +<html> + <head> + <meta charset="UTF-8" /> + <title>JavaScript Program Template</title> + </head> + + <body onload="main()"> + <div> + <input type="file" id="fileElement"> + <pre id="displayArea"> + </pre> + </div> + + <script> + "use strict"; + + function main() { + document.getElementById("fileElement").onchange = loadData; + } + + function loadData(e) { + var file = document.getElementById("fileElement").files[0]; + var reader = new FileReader(); + + reader.onload = function(event) { + var img = new Image(); + + img.src = reader.result; + document.getElementById("displayArea").appendChild(img); + }; + + reader.readAsDataURL(file); + } + + </script> + </body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/ObjsAPISCode/FileReading/FileReadingText.html b/javascript_resources/code_examples/ObjsAPISCode/FileReading/FileReadingText.html new file mode 100755 index 0000000000000000000000000000000000000000..c466ce60cda33d9fa7a4212cbaf7492bfd244a57 --- /dev/null +++ b/javascript_resources/code_examples/ObjsAPISCode/FileReading/FileReadingText.html @@ -0,0 +1,35 @@ +<!doctype html> +<html> + <head> + <meta charset="UTF-8" /> + <title>JavaScript Program Template</title> + </head> + + <body onload="main()"> + <div> + <input type="file" id="fileElement"> + <pre id="displayArea"> + </pre> + </div> + + <script> + "use strict"; + + function main() { + document.getElementById("fileElement").onchange = loadData; + } + + function loadData(e) { + var file = document.getElementById("fileElement").files[0]; + var reader = new FileReader(); + + reader.onload = function(event) { + document.getElementById("displayArea").innerHTML = reader.result; + }; + + reader.readAsText(file); + } + + </script> + </body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/ObjsAPISCode/FileReading/data.txt b/javascript_resources/code_examples/ObjsAPISCode/FileReading/data.txt new file mode 100755 index 0000000000000000000000000000000000000000..6ca778393277bf2808b3a2bfafabe7b7ab438be7 --- /dev/null +++ b/javascript_resources/code_examples/ObjsAPISCode/FileReading/data.txt @@ -0,0 +1,3 @@ +This is a file +with some +sample data. diff --git a/javascript_resources/code_examples/ObjsAPISCode/FileReading/picture.png b/javascript_resources/code_examples/ObjsAPISCode/FileReading/picture.png new file mode 100755 index 0000000000000000000000000000000000000000..4325e442001d6001bf841ff6b9cc19ae57a5969c Binary files /dev/null and b/javascript_resources/code_examples/ObjsAPISCode/FileReading/picture.png differ diff --git a/javascript_resources/code_examples/ObjsAPISCode/FileReading/studentsInM.jpg b/javascript_resources/code_examples/ObjsAPISCode/FileReading/studentsInM.jpg new file mode 100755 index 0000000000000000000000000000000000000000..b26f15d22966eeb998be7c879e5df15e0e0bc008 Binary files /dev/null and b/javascript_resources/code_examples/ObjsAPISCode/FileReading/studentsInM.jpg differ diff --git a/javascript_resources/code_examples/ObjsAPISCode/Freeze.html b/javascript_resources/code_examples/ObjsAPISCode/Freeze.html new file mode 100755 index 0000000000000000000000000000000000000000..a23b0be833460342041be5592fb9b8dad81163e1 --- /dev/null +++ b/javascript_resources/code_examples/ObjsAPISCode/Freeze.html @@ -0,0 +1,29 @@ +<!doctype html> +<head> + <meta charset="utf-8" /> + <title>JS Example</title> +</head> + +<body> + <script> + "use strict"; + main(); + + function main() { + var school = new Object(); + var info; + + school.name = "UMCP"; + school.city = "College Park"; + Object.freeze(school); + + /* NOT Allowed (Generates error) school.mascot = "terp"; */ + /* NOT Allowed (Generates error) school.name = "UMD"; */ + /* NOT Allowed (Generates error) delete school.city; */ + + info = school.name + " " + school.city + " " + school.mascot; + document.writeln(info); + } + </script> +</body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/ObjsAPISCode/Geolocation.html b/javascript_resources/code_examples/ObjsAPISCode/Geolocation.html new file mode 100755 index 0000000000000000000000000000000000000000..0febaa612c5a7f1234a1c3bb74c069f56b1c016c --- /dev/null +++ b/javascript_resources/code_examples/ObjsAPISCode/Geolocation.html @@ -0,0 +1,32 @@ +<!doctype html> +<html> + <head> + <meta charset="utf-8" /> + <title>Geolocation</title> + </head> + <body> + <script> + if (!navigator.geolocation) { + alert("Geolocation not supported in current browser"); + } else { + navigator.geolocation.getCurrentPosition(success, failure); + } + function success(position) { + var latitude = position.coords.latitude; + var longitude = position.coords.longitude; + document.writeln("Position is: " + latitude + ", " + longitude); + document.writeln("<br />Copy above position in "); + document.writeln("<a href=\"http://maps.google.com/maps\">google maps</a>"); + document.writeln(" to verify location "); + } + function failure(error) { + var errors = { + 1: "Permission denied", + 2: "Position unavailable", + 3: "Request timeout" + }; + alert("Error ocurred: " + errors[error.code]); + } + </script> + </body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/ObjsAPISCode/GetterSetter.html b/javascript_resources/code_examples/ObjsAPISCode/GetterSetter.html new file mode 100755 index 0000000000000000000000000000000000000000..6c9eceb2ce8c1d25ed346ac5f940475caefdc893 --- /dev/null +++ b/javascript_resources/code_examples/ObjsAPISCode/GetterSetter.html @@ -0,0 +1,29 @@ +<!doctype html> +<html> +<head> + <meta charset="UTF-8" /> + <title>JS Example</title> +</head> + +<body> + <script> + "use strict"; + + var person = { + _firstname: "John", + _age: 35, + get getname() { return this._firstname;}, + get age() { return this._age;}, + set age(age) { return this._age = age;} + }; + + document.writeln(person.getname); + document.writeln(person.age); + person.age = 40; /* To update we assign the value */ + document.writeln(person.age); /* retrieving the value */ + person._age = 100; + document.writeln("<br>Still modifying property: " + person.age) + + </script> +</body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/ObjsAPISCode/GuessGameWithSound.html b/javascript_resources/code_examples/ObjsAPISCode/GuessGameWithSound.html new file mode 100755 index 0000000000000000000000000000000000000000..137f4b0530e22e0a5858cd4cf6d11fc896c6cb9c --- /dev/null +++ b/javascript_resources/code_examples/ObjsAPISCode/GuessGameWithSound.html @@ -0,0 +1,42 @@ +<!doctype html> +<html> + <head> + <meta charset="UTF-8" /> + <title>JavaScript Program Template</title> + </head> + <body> + + <div id="imageBox"> + <img id="myImage" src="YOUR_PLAY_GAME_IMAGE_HERE.png" alt="Status" /> + </div> + + <audio id="mySound"> + <source src="YOUR_SOUND_HERE.mp3" type="audio/mpeg"> + </audio> + + <script> + "use strict"; + + + function displayPhoto(photoToDisplay) { + var imageElement = document.getElementById("myImage"); + imageElement.setAttribute("src", photoToDisplay); + } + + var valueToGuess = Math.floor(2 * Math.random()) + 1; + var guess; + do { + guess = Number(prompt("Enter your guess")); + if (guess == valueToGuess) { + alert("Good Job!!!"); + displayPhoto("YOUR_WINNER_IMAGE_HERE.jpg"); + var myAudio = document.getElementById("mySound"); + myAudio.play(); + } else { + alert("Wrong guess"); + } + } while(valueToGuess !== guess); + </script> + + </body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/ObjsAPISCode/PrivateVarFunctions.html b/javascript_resources/code_examples/ObjsAPISCode/PrivateVarFunctions.html new file mode 100755 index 0000000000000000000000000000000000000000..2893aefa3d48b7ae9b78dc49ade5857e64b9c49c --- /dev/null +++ b/javascript_resources/code_examples/ObjsAPISCode/PrivateVarFunctions.html @@ -0,0 +1,54 @@ +<!doctype html> +<head> + <meta charset="utf-8" /> + <title>JS Example</title> +</head> + +<body> + <script> + "use strict"; + + function Student(name, age) { + /* private variable */ + let maxAge = 108; + + this.getName = function() { + return name; + } + + this.getAge = function() { + return age; + } + + this.setAge = function(ageIn) { + if (validAge(ageIn)) { + age = ageIn; + } + }; + + /* Private function. */ + function validAge(ageVal) { + if (ageVal < maxAge) { + return true; + } + return false; + } + } + main(); + + function main() { + let s1 = new Student("Mary", 34); + + document.writeln("name: " + s1.name + "<br>"); + document.writeln("age: " + s1.age + "<br>"); + document.writeln("maxAge: " + s1.maxAge + "<br>"); + + document.writeln("getName: " + s1.getName() + "<br>"); + document.writeln("getAge: " + s1.getAge() + "<br>"); + s1.setAge(40); + document.writeln("getAge (after update): " + s1.getAge() + "<br>"); + } + + </script> +</body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/ObjsAPISCode/ThrowDie.html b/javascript_resources/code_examples/ObjsAPISCode/ThrowDie.html new file mode 100755 index 0000000000000000000000000000000000000000..2b35ad57501a292d298a1ace1a9475fa082c8006 --- /dev/null +++ b/javascript_resources/code_examples/ObjsAPISCode/ThrowDie.html @@ -0,0 +1,56 @@ +<!doctype html> +<html> + <head> + <meta charset="UTF-8" /> + <title>JavaScript Program Template</title> + </head> + <body onload="main()"> + + <span id="imageBox"> + </span> + <span id="imageBox2"> + </span> + <input type="button" id="myButton" value="Roll"> + + <script> + "use strict"; + + var animation; + var times = 5; + var curr = 0; + + function main() { + var myButton = document.getElementById("myButton"); + myButton.onclick = roll; + } + + function roll() { + curr = 0; + animation = setInterval("throwDies()", 1000); + } + + function displayPhoto(photoToDisplay) { + var imageElement = document.getElementById("myImage"); + imageElement.setAttribute("src", photoToDisplay); + } + + function throwDies() { + var dieNumber = Math.floor(6 * Math.random()); + var value = 9856 + dieNumber; + + document.getElementById("imageBox").innerHTML = "&#" + value; + + dieNumber = Math.floor(6 * Math.random()); + value = 9856 + dieNumber; + document.getElementById("imageBox2").innerHTML = "&#" + value; + + curr++; + if (curr == times) { + clearInterval(animation); + } + } + + </script> + + </body> +</html> \ No newline at end of file diff --git a/javascript_resources/code_examples/ObjsAPISCode/TodoList.html b/javascript_resources/code_examples/ObjsAPISCode/TodoList.html new file mode 100755 index 0000000000000000000000000000000000000000..d6687611b08ad43c4c3356b8b69df43761d06809 --- /dev/null +++ b/javascript_resources/code_examples/ObjsAPISCode/TodoList.html @@ -0,0 +1,34 @@ +<!DOCTYPE html> + <html> + <head> + <meta charset="utf-8"> + <title>Todo List</title> + </head> + <body onload="main()"> + <h1>Todo List</h1> + + <form id="mainForm"> + <!-- Notice the contenteditable attribute --> + <ol id="todoList" contenteditable><li>Add Tasks</li></ol> + <input id="SaveButton" type="button" value="Save"> + </form> + + <script> + function main() { + + var todoList = localStorage.getItem("todoList"); + if (todoList === null) { + todoList = "<li>Add Tasks</li>" + } + document.getElementById("todoList").innerHTML = todoList; + + /* Using anonymous function as listener */ + document.getElementById("SaveButton").onclick = function() { + var todoList = document.getElementById("todoList").innerHTML; + localStorage.setItem("todoList", todoList); + alert("Data saved"); + }; + } + </script> + +</body></html> \ No newline at end of file diff --git a/javascript_resources/code_examples/WebServicesPromisesCode/ImmediatelyInvokedFunctionExpression.html b/javascript_resources/code_examples/WebServicesPromisesCode/ImmediatelyInvokedFunctionExpression.html new file mode 100755 index 0000000000000000000000000000000000000000..cb51ad464bfdca421db6969adee9f3eb2169b333 --- /dev/null +++ b/javascript_resources/code_examples/WebServicesPromisesCode/ImmediatelyInvokedFunctionExpression.html @@ -0,0 +1,20 @@ +<!doctype html> +<html lang="en"> + <head> + <title>Example</title> + <meta charset="utf-8" /> + </head> + + <body> + <script> + /* Immediately Invoked Function Expression (IIFE) */ + + /* Placing the function expression within parenthesis */ + document.writeln("IIFE<br>"); + (function (x, y) { + document.writeln(x * y); + } (4, 6)); + document.writeln("End of IIFE<br>"); + </script> + </body> +</html> \ No newline at end of file diff --git a/389N_stuff/code_examples/WebServicesPromisesCode/ModuleImplementationViaIIFE.html b/javascript_resources/code_examples/WebServicesPromisesCode/ModuleImplementationViaIIFE.html similarity index 100% rename from 389N_stuff/code_examples/WebServicesPromisesCode/ModuleImplementationViaIIFE.html rename to javascript_resources/code_examples/WebServicesPromisesCode/ModuleImplementationViaIIFE.html diff --git a/389N_stuff/code_examples/WebServicesPromisesCode/PromisesBasics.html b/javascript_resources/code_examples/WebServicesPromisesCode/PromisesBasics.html similarity index 100% rename from 389N_stuff/code_examples/WebServicesPromisesCode/PromisesBasics.html rename to javascript_resources/code_examples/WebServicesPromisesCode/PromisesBasics.html diff --git a/389N_stuff/code_examples/WebServicesPromisesCode/PromisesFib.js b/javascript_resources/code_examples/WebServicesPromisesCode/PromisesFib.js similarity index 100% rename from 389N_stuff/code_examples/WebServicesPromisesCode/PromisesFib.js rename to javascript_resources/code_examples/WebServicesPromisesCode/PromisesFib.js diff --git a/javascript_resources/slides/EventsJSClasses.pdf b/javascript_resources/slides/EventsJSClasses.pdf new file mode 100644 index 0000000000000000000000000000000000000000..1bca97e517a9bf126f6600c9feff207d0292b3d3 Binary files /dev/null and b/javascript_resources/slides/EventsJSClasses.pdf differ diff --git a/389N_stuff/Express.pdf b/javascript_resources/slides/Express.pdf similarity index 100% rename from 389N_stuff/Express.pdf rename to javascript_resources/slides/Express.pdf diff --git a/javascript_resources/slides/JSConstructsI.pdf b/javascript_resources/slides/JSConstructsI.pdf new file mode 100644 index 0000000000000000000000000000000000000000..179b74c10e8fee30736a62dc32108cc9255b55f9 Binary files /dev/null and b/javascript_resources/slides/JSConstructsI.pdf differ diff --git a/javascript_resources/slides/JSConstructsII.pdf b/javascript_resources/slides/JSConstructsII.pdf new file mode 100644 index 0000000000000000000000000000000000000000..c64f6e961e2ff2900f7eecedd2fd148f1720a7c6 Binary files /dev/null and b/javascript_resources/slides/JSConstructsII.pdf differ diff --git a/javascript_resources/slides/JSIntro.pdf b/javascript_resources/slides/JSIntro.pdf new file mode 100644 index 0000000000000000000000000000000000000000..052f6a85d7428be68c2ff4d7eaa33ad0f5cfe6eb Binary files /dev/null and b/javascript_resources/slides/JSIntro.pdf differ diff --git a/javascript_resources/slides/JSObjects.pdf b/javascript_resources/slides/JSObjects.pdf new file mode 100644 index 0000000000000000000000000000000000000000..7c6f8f4c9b30125578ef4ce0bfa59172a08f03a3 Binary files /dev/null and b/javascript_resources/slides/JSObjects.pdf differ diff --git a/389N_stuff/NodeJS.pdf b/javascript_resources/slides/NodeJS.pdf similarity index 100% rename from 389N_stuff/NodeJS.pdf rename to javascript_resources/slides/NodeJS.pdf diff --git a/javascript_resources/slides/ObjsAPIS.pdf b/javascript_resources/slides/ObjsAPIS.pdf new file mode 100644 index 0000000000000000000000000000000000000000..73a2a0db49b88c9e3313f647259e339728522732 Binary files /dev/null and b/javascript_resources/slides/ObjsAPIS.pdf differ diff --git a/389N_stuff/WebServicesPromises.pdf b/javascript_resources/slides/WebServicesPromises.pdf similarity index 100% rename from 389N_stuff/WebServicesPromises.pdf rename to javascript_resources/slides/WebServicesPromises.pdf