Permalink
Please sign in to comment.
Browse files
Removed new incomplete JS Challenges and moved to OOPF branch.
- Loading branch information...
Showing
with
289 additions
and 6 deletions.
3
.jshintrc
4
public/js/main_0.0.3.js
3
seed/challenges/basic-javascript.json
285
seed/challenges/object-oriented-and-functional-programming.json
@@ -1,6 +1,287 @@ | |||
{ | { | ||
- "name": "Object Oriented and Functional Programming - Coming Soon", | + "name": "Object Oriented and Functional Programming \n - \n Under Construction From Challenge 4 Onwards", | ||
- "order" : 0.010, | + "order" : 0.009, | ||
+ "note": [ | |||
+ "inheritance" | |||
+ ], | |||
"challenges": [ | "challenges": [ | ||
+ { | |||
+ "id":"cf1111c1c15feddfaeb1bdef", | |||
+ "title":"Waypoint: A Review On Objects", | |||
+ "difficulty":0, | |||
+ "description":[ | |||
+ "", | |||
+ "Before we dive into Object Oriented Programming Let's take a quick look over objects in javascript" | |||
+ ], | |||
+ "tests":[ | |||
+ "assert(motorBike.wheels===2, 'You should have given motorBike two wheels');", | |||
+ "assert(motorBike.engine===1, 'You should have given motorBike one engine');", | |||
+ "assert(motorBike.seats===1, 'You should have given motorBike one seat');" | |||
+ ], | |||
+ "challengeSeed":[ | |||
+ "//Here is a sample Object", | |||
+ "var car = {", | |||
+ " \"wheels\":4,", | |||
+ " \"engine\":1,", | |||
+ " \"seats\":5", | |||
+ "};", | |||
+ "", | |||
+ "//Now Let's make a similar Object called motorBike", | |||
+ "//Give it two wheels, one engine and one seat", | |||
+ "var motorBike = {", | |||
+ " \"wheels\":0,", | |||
+ " \"engine\":0,", | |||
+ " \"seats\":0", | |||
+ "};", | |||
+ "", | |||
+ "(function(){return(JSON.stringify(motorBike));})();" | |||
+ ], | |||
+ "challengeType":1 | |||
+ }, | |||
+ { | |||
+ "id":"cf1111c1c15feddfaeb2bdef", | |||
+ "title":"Waypoint: Constructing Objects", | |||
+ "difficulty":0, | |||
+ "description":[ | |||
+ "", | |||
+ "We are also able to create Objects using functions" | |||
+ ], | |||
+ "tests":[ | |||
+ "assert((new Car()).wheels === 4, \"myCar.wheels should be four. Make sure that you haven't changed this value\");", | |||
+ "assert(typeof((new Car()).engine) === 'number', 'myCar.engine should be a number');", | |||
+ "assert(typeof((new Car()).seats) === 'number', 'myCar.seats should be a number');" | |||
+ ], | |||
+ "challengeSeed":[ | |||
+ "//Let's add the properties engine and seats to the car in the same way that the property wheels has been added below. They should both be numbers", | |||
+ "var Car = function(){", | |||
+ " this.wheels = 4;", | |||
+ "};", | |||
+ "", | |||
+ "//Instantiated Here", | |||
+ "var myCar = new Car();", | |||
+ "", | |||
+ "(function(){return(JSON.stringify(myCar));})();" | |||
+ ], | |||
+ "challengeType":1 | |||
+ }, | |||
+ { | |||
+ "id":"cf1111c1c15feddfaeb3bdef", | |||
+ "title":"Waypoint: Understanding Public and Private Properties", | |||
+ "difficulty":0, | |||
+ "description":[ | |||
+ "", | |||
+ "In the last challenge we use the <code>this</code> to reference public properties the current object or function.", | |||
+ "We can also create variables and functions that aren't accessible from outside the Object" | |||
+ ], | |||
+ "tests":[ | |||
+ "assert(answers.Q1===true, 'The number Gear is Publicly Accessible');", | |||
+ "assert(answers.Q2===true, 'The function getGear is Publicly Accessible');", | |||
+ "assert(answers.Q3===false, 'The function addStyle is not Publicly Accessible');" | |||
+ ], | |||
+ "challengeSeed":[ | |||
+ "//Let's create an object with a two functions. One attached as a property and one not.", | |||
+ "var Car = function(){", | |||
+ " this.gear = 1;", | |||
+ " function addStyle(styleMe){", | |||
+ " return('The Current Gear Is: ' + styleMe);", | |||
+ " }", | |||
+ " this.getGear = function(){", | |||
+ " return(addStyle(this.gear));", | |||
+ " };", | |||
+ "};", | |||
+ "", | |||
+ "//Quick Quiz!", | |||
+ "//Say whether the follow statements are true or false in the answers object below", | |||
+ "", | |||
+ "//Statement One", | |||
+ "//The number gear publicly accessible", | |||
+ "", | |||
+ "//Statement Two", | |||
+ "//The function getGear publicly accessible", | |||
+ "", | |||
+ "//Statement Three", | |||
+ "//The function addStyle publicly accessible", | |||
+ "", | |||
+ "var answers = {", | |||
+ " 'Q1':false,", | |||
+ " 'Q2':false,", | |||
+ " 'Q3':false", | |||
+ "};", | |||
+ "", | |||
+ "//Instantiated Here", | |||
+ "var myCar = new Car();", | |||
+ "", | |||
+ "(function(){return(JSON.stringify(answers));})();" | |||
+ ], | |||
+ "challengeType":1 | |||
+ }, | |||
+ { | |||
+ "id":"cf1111c1c13feddfaeb6bdef", | |||
+ "title":"Waypoint: Instantiation", | |||
+ "difficulty":0, | |||
+ "description":[ | |||
+ "", | |||
+ "Instantiation at it's most basic level is where you are creating a copy of an object from a template for use at a later time" | |||
+ ], | |||
+ "tests":[ | |||
+ "assert((new Car()).wheels === 4, 'The property wheels should be four in the object constructor');", | |||
+ "assert(typeof((new Car()).engine) === 'undefined', 'There should not be a property engine in the object constructor');", | |||
+ "assert(myCar.wheels === 4, 'The property wheels of myCar should be four');", | |||
+ "assert(typeof(myCar.engine) === 'number', 'The property engine of myCar should be a number');" | |||
+ ], | |||
+ "challengeSeed":[ | |||
+ "var Car = function(){", | |||
+ " this.wheels = 4;", | |||
+ "};", | |||
+ "", | |||
+ "var myCar = new Car();", | |||
+ "", | |||
+ "//Add the property engine to myCar using dot notation and make it a number", | |||
+ "", | |||
+ "", | |||
+ "(function(){return(JSON.stringify(myCar));})();" | |||
+ ], | |||
+ "challengeType":1 | |||
+ }, | |||
+ { | |||
+ "id":"cf1111c1c13feddfaeb9bdef", | |||
+ "title":"Waypoint: Inheritance", | |||
+ "difficulty":0, | |||
+ "description":[ | |||
+ "" | |||
+ ], | |||
+ "tests":[ | |||
+ "assert(1==2, '');" | |||
+ ], | |||
+ "challengeSeed":[ | |||
+ "Under Construction" | |||
+ ], | |||
+ "challengeType":1 | |||
+ }, | |||
+ { | |||
+ "id":"cf1111c1c14feddfaeb1bdef", | |||
+ "title":"Waypoint: Prototypical Inheritance", | |||
+ "difficulty":0, | |||
+ "description":[ | |||
+ "" | |||
+ ], | |||
+ "tests":[ | |||
+ "assert(1==2, '');" | |||
+ ], | |||
+ "challengeSeed":[ | |||
+ "Under Construction" | |||
+ ], | |||
+ "challengeType":1 | |||
+ }, | |||
+ { | |||
+ "id":"cf1111c1c13feddfaeb7bdef", | |||
+ "title":"Waypoint: Closures", | |||
+ "difficulty":0, | |||
+ "description":[ | |||
+ "" | |||
+ ], | |||
+ "tests":[ | |||
+ "assert(1==2, '');" | |||
+ ], | |||
+ "challengeSeed":[ | |||
+ "Under Construction" | |||
+ ], | |||
+ "challengeType":1 | |||
+ }, | |||
+ { | |||
+ "id":"cf1111c1c14feddfaeb3bdef", | |||
+ "title":"Waypoint: Factories", | |||
+ "difficulty":0, | |||
+ "description":[ | |||
+ "" | |||
+ ], | |||
+ "tests":[ | |||
+ "assert(1==2, '');" | |||
+ ], | |||
+ "challengeSeed":[ | |||
+ "Under Construction" | |||
+ ], | |||
+ "challengeType":1 | |||
+ }, | |||
+ { | |||
+ "id":"cf1111c1c14feddfaeb5bdef", | |||
+ "title":"Waypoint: Pure Functions", | |||
+ "Note":"May need a waypoint before each topic to announce what it is :p", | |||
+ "difficulty":0, | |||
+ "description":[ | |||
+ "" | |||
+ ], | |||
+ "tests":[ | |||
+ "assert(1==2, '');" | |||
+ ], | |||
+ "challengeSeed":[ | |||
+ "Under Construction" | |||
+ ], | |||
+ "challengeType":1 | |||
+ }, | |||
+ { | |||
+ "id":"cf1111c1c14feddfaeb6bdef", | |||
+ "title":"Waypoint: Currying Functions", | |||
+ "difficulty":0, | |||
+ "description":[ | |||
+ "" | |||
+ ], | |||
+ "tests":[ | |||
+ "assert(1==2, '');" | |||
+ ], | |||
+ "challengeSeed":[ | |||
+ "Under Construction" | |||
+ ], | |||
+ "challengeType":1 | |||
+ }, | |||
+ { | |||
+ "id":"cf1111c1c14feddfaeb7bdef", | |||
+ "title":"Waypoint: Composition", | |||
+ "difficulty":0, | |||
+ "description":[ | |||
+ "" | |||
+ ], | |||
+ "tests":[ | |||
+ "assert(1==2, '');" | |||
+ ], | |||
+ "challengeSeed":[ | |||
+ "Under Construction" | |||
+ ], | |||
+ "challengeType":1 | |||
+ }, | |||
+ { | |||
+ "id":"cf1111c1c14feddfaeb8bdef", | |||
+ "title":"Waypoint: Functors", | |||
+ "difficulty":0, | |||
+ "description":[ | |||
+ "" | |||
+ ], | |||
+ "tests":[ | |||
+ "assert(1==2, '');" | |||
+ ], | |||
+ "challengeSeed":[ | |||
+ "Under Construction" | |||
+ ], | |||
+ "challengeType":1 | |||
+ }, | |||
+ { | |||
+ "id":"cf1111c1c14feddfaeb9bdef", | |||
+ "title":"Waypoint: Currying Functions", | |||
+ "Notes":[ | |||
+ "", | |||
+ "" | |||
+ ], | |||
+ "difficulty":0, | |||
+ "description":[ | |||
+ "" | |||
+ ], | |||
+ "tests":[ | |||
+ "assert(1==2, '');" | |||
+ ], | |||
+ "challengeSeed":[ | |||
+ "Under Construction" | |||
+ ], | |||
+ "challengeType":1 | |||
+ } | |||
] | ] | ||
} | } |
0 comments on commit
9df99eb