diff --git a/README.md b/README.md index ebc7c45..6343b73 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# CORE HTML/CSS +# CORE JAVASCRIPT/JQUERY This is the official Girl Develop It Core Intro Javascript course. Material based on original material by Sara Chipps, Pamela Fox, Alexis Goldstein, Izzy Johnston and Leo Newball. diff --git a/class2.html b/class2.html new file mode 100644 index 0000000..e218f21 --- /dev/null +++ b/class2.html @@ -0,0 +1,554 @@ + + + +
+ + +Girl Develop It is here to provide affordable and accessible programs to learn software through mentorship and hands-on instruction.
+Some "rules"
+Sometimes you want to go through a piece of code multiple times
+Why?
+The while loop tells JS to repeat statements until a condition is true:
+
+ while (expression) {
+ // statements to repeat
+ }
+
+
+ var x = 0;
+ while (x < 5) {
+ console.log(x);
+ x++;
+ }
+
+ What happens if we forget x++;?
+The loop will never end!!
+The for loop is a safer way of looping
+
+ for (initialize; condition; update) {
+ // statements to repeat
+ }
+
+
+ for (var i = 0; i < 5; i++) {
+ console.log(i);
+ }
+
+ An array is a data-type that holds an ordered list of values, of any type:
+
+ var arrayName = [element0, element1, ...];
+
+
+var rainbowColors = ['Red', 'Orange', 'Yellow', 'Green', 'Blue', 'Indigo', 'Violet'];
+var favoriteNumbers = [16, 27, 88];
+var luckyThings = ['Rainbows', 7, 'Horseshoes'];
+
+
+ console.log(rainbowColors.length);
+
+ You can access items with "bracket notation".
+
+ var arrayItem = arrayName[indexNum];
+
+
+ var rainbowColors = ['Red', 'Orange', 'Yellow', 'Green', 'Blue', 'Indigo', 'Violet'];
+ var firstColor = rainbowColors[0];
+ var lastColor = rainbowColors[6];
+
+
+ var awesomeAnimals = ['Corgis', 'Otters', 'Octopi'];
+ awesomeAnimals[0] = 'Bunnies';
+
+
+ awesomeAnimals[4] = 'Corgis';
+
+
+ awesomeAnimals.push('Ocelots');
+
+
+var rainbowColors = ['Red', 'Orange', 'Yellow', 'Green', 'Blue', 'Indigo', 'Violet'];
+for (var i = 0; i < rainbowColors.length; i++) {
+ console.log(rainbowColors[i]);
+}
+
+ Objects are a data type that let us store a collection of properties and methods.
+
+ var objectName = {
+ propertyName: propertyValue,
+ propertyName: propertyValue,
+ ...
+ };
+
+
+ var charlie = {
+ age: 8,
+ name: "Charlie Brown",
+ likes: ["baseball", "The little red-haired girl"],
+ pet: "Snoopy"
+ };
+
+ Access values of "properties" using "dot notation":
+
+ var charlie = {
+ age: 8,
+ name: "Charlie Brown",
+ likes: ["baseball", "The little red-haired girl"],
+ pet: "Snoopy"
+ };
+
+
+ var pet = charlie.pet;
+
+
+ var name = charlie['name'];
+
+
+ var gender = charlie.gender
+
+ Use dot or bracket notation with the assignment operator to change objects.
+
+ charlie.name = "Chuck";
+
+
+ charlie.gender = "male";
+
+
+ delete charlie.gender;
+
+ Arrays can hold objects too!
+
+ var peanuts = [
+ {name: "Charlie Brown",
+ pet: "Snoopy"},
+ {name: "Linus van Pelt",
+ pet: "Blue Blanket"}
+ ];
+
+
+ for (var i = 0; i < peanuts.length; i++) {
+ var peanut = peanuts[i];
+ console.log(peanut.name + ' has a pet named ' + peanut.pet + '.');
+ }
+
+ You can pass an object into a function as a parameter
+
+ var peanut ={
+ name: "Charlie Brown",
+ pet: "Snoopy"
+ };
+
+
+ function describeCharacter(character){
+ console.log(character.name + ' has a pet named ' + character.pet + '.');
+ }
+
+
+ describeCharacter(peanut);
+
+ On every webpage, the document object gives us ways of accessing and changing the DOM.
+Every DOM "node" has properties. They are connected like a family tree.
+Parent (parentNode), children (childNodes, firstChild), siblings (prevSibling, nextSibling)
+
+ var bodyNode = document.body; // <body>
+ var htmlNode = document.body.parentNode; // <html>
+ for (var i = 0; i < document.body.childNodes.length; i++) {
+ var childNode = document.body.childNodes[i];
+ //could be <p>, <h1>, etc.
+ //any html element
+ }
+
+ Finding every element on the page by siblings and children is time consuming!
+The document object also provides methods for finding DOM nodes without going one by one
+
+<img id="mainpicture" src="http://girldevelopit.com/assets/pink-logo.png">
+
+
+var img = document.getElementById('mainpicture');
+
+
+ <li class="peanut">Charlie Brown</li>
+ <li class="peanut">Linus van Pelt</li>
+
+
+ var listItems = document.getElementsByTagName('li');
+ for (var i =0; i < listItems.length; i++) {
+ var listItem = listItems[i];
+ }
+
+
+ var candy = ['Gummy Bears', 'Sour Patch Kids', 'Swedish Fish'];
+ var length = candy.length;
+
+ We can use node methods to set and retrieve attributes
+
+ var img = document.getElementById('mainpicture');
+ img.getAttribute('src');
+ img.setAttribute('src', 'http://girldevelopit.com/assets/pink-logo.png');
+
+
+
+ var img = document.getElementById('mainpicture');
+ img.getAttribute('class');
+ img.setAttribute('class', 'picture-class');
+
+ Each DOM node has an innerHTML property:
+
+ document.body.innerHTML;
+
+
+document.body.innerHTML = '<p>I changed the whole page!</p>';
+
+
+document.body.innerHTML += "...just adding this bit at the end of the page.";
+
+ The document object can create new nodes:
+
+ document.createElement(tagName);
+ document.createTextNode(text);
+ document.appendChild();
+
+
+var newImg = document.createElement('img');
+newImg.src = 'http://girldevelopit.com/assets/pink-logo.png';
+document.body.appendChild(newImg);
+
+
+var newParagraph = document.createElement('p');
+var paragraphText = document.createTextNode('New Paragraph!');
+newParagraph.appendChild(paragraphText);
+document.body.appendChild(newParagraph);
+
+