Removed new incomplete JS Challenges and moved to OOPF branch.
This commit is contained in:
@ -16,6 +16,7 @@
|
|||||||
"strict": false, // Require `use strict` pragma in every file.
|
"strict": false, // Require `use strict` pragma in every file.
|
||||||
"trailing": true, // Prohibit trailing whitespaces.
|
"trailing": true, // Prohibit trailing whitespaces.
|
||||||
"smarttabs": false, // Suppresses warnings about mixed tabs and spaces
|
"smarttabs": false, // Suppresses warnings about mixed tabs and spaces
|
||||||
|
"esnext": true, // Allow ES6 maybe :p
|
||||||
"globals": { // Globals variables.
|
"globals": { // Globals variables.
|
||||||
"jasmine": true,
|
"jasmine": true,
|
||||||
"angular": true,
|
"angular": true,
|
||||||
@ -37,4 +38,4 @@
|
|||||||
],
|
],
|
||||||
"devel": true, // Allow development statements e.g. `console.log();`.
|
"devel": true, // Allow development statements e.g. `console.log();`.
|
||||||
"noempty": true // Prohibit use of empty blocks.
|
"noempty": true // Prohibit use of empty blocks.
|
||||||
}
|
}
|
||||||
|
@ -312,7 +312,9 @@ $(document).ready(function() {
|
|||||||
$('#story-submit').on('click', storySubmitButtonHandler);
|
$('#story-submit').on('click', storySubmitButtonHandler);
|
||||||
|
|
||||||
if($('.editorScrollDiv').html() !== 'undefined'){
|
if($('.editorScrollDiv').html() !== 'undefined'){
|
||||||
$('.editorScrollDiv').css("height",$(window).height()-($('.navbar').height()+$('.footer').height()+100) + "px");
|
function truncateEditor(){$('.editorScrollDiv').css("height",$(window).height()-($('.navbar').height()+$('.footer').height()+100) + "px");}
|
||||||
|
truncateEditor();
|
||||||
|
$(window).resize(function(){truncateEditor();});
|
||||||
}
|
}
|
||||||
|
|
||||||
//fakeiphone positioning hotfix
|
//fakeiphone positioning hotfix
|
||||||
|
@ -457,8 +457,7 @@
|
|||||||
"Once an array has been created we can access the data we have stored in them using indexes",
|
"Once an array has been created we can access the data we have stored in them using indexes",
|
||||||
"Indexes are written in the same way as bracket notation that we covered earlier",
|
"Indexes are written in the same way as bracket notation that we covered earlier",
|
||||||
"Example:",
|
"Example:",
|
||||||
"<code>",
|
"<code>var array = [1,2,3];",
|
||||||
"var array = [1,2,3];",
|
|
||||||
"array[0];//equals 1",
|
"array[0];//equals 1",
|
||||||
"var data = array[1];",
|
"var data = array[1];",
|
||||||
"</code>",
|
"</code>",
|
||||||
|
@ -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
|
||||||
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user