Merge pull request #12 from Bouncey/feat/featureBuild
Feat/feature build
This commit is contained in:
committed by
Mrugesh Mohapatra
parent
28fcbc0970
commit
9a4fa06fad
@ -0,0 +1,8 @@
|
|||||||
|
---
|
||||||
|
title: Introduction to the React and Redux Challenges
|
||||||
|
block: React and Redux
|
||||||
|
superBlock: Front End Libraries
|
||||||
|
---
|
||||||
|
## Introduction to the React and Redux Challenges
|
||||||
|
|
||||||
|
This is a stub introduction.
|
@ -0,0 +1,8 @@
|
|||||||
|
---
|
||||||
|
title: Introduction to the React Challenges
|
||||||
|
block: React
|
||||||
|
superBlock: Front End Libraries
|
||||||
|
---
|
||||||
|
## Introduction to the React Challenges
|
||||||
|
|
||||||
|
This is a stub introduction.
|
@ -0,0 +1,8 @@
|
|||||||
|
---
|
||||||
|
title: Introduction to the Redux Challenges
|
||||||
|
block: Redux
|
||||||
|
superBlock: Front End Libraries
|
||||||
|
---
|
||||||
|
## Introduction to the Redux Challenges
|
||||||
|
|
||||||
|
This is a stub introduction.
|
@ -0,0 +1,8 @@
|
|||||||
|
---
|
||||||
|
title: Introduction to the Advances Node and Express Challenges
|
||||||
|
block: Advanced Node and Express
|
||||||
|
superBlock: Information Security and Quality Assurance
|
||||||
|
---
|
||||||
|
## Introduction to Advanced Node and Express Challenges
|
||||||
|
|
||||||
|
This is a stub introduction
|
@ -0,0 +1,8 @@
|
|||||||
|
---
|
||||||
|
title: Introduction to the Quality Assurance with Chai Challenges
|
||||||
|
block: Quality Assurance with Chai
|
||||||
|
superBlock: Information Security and Quality Assurance
|
||||||
|
---
|
||||||
|
## Introduction to Quality Assurance with Chai Challenges
|
||||||
|
|
||||||
|
This is a stub introduction
|
@ -1,12 +1,8 @@
|
|||||||
---
|
---
|
||||||
title: Introduction to Objects
|
title: Introduction to the Basic Data Structure Challenges
|
||||||
block: Basic Data Structures
|
block: Basic Data Structures
|
||||||
superBlock: JavaScript Algorithms and Data Structures
|
superBlock: JavaScript Algorithms and Data Structures
|
||||||
---
|
---
|
||||||
## Introduction to Objects
|
## Introduction to the Basic Data Structure Challenges
|
||||||
|
|
||||||
The next data structure we will discuss is the JavaScript <dfn>object</dfn>. Like arrays, objects are a fundamental part of JavaScript. However, it is probably safe to say that objects surpass arrays in flexibility, usefulness and in their overall importance to the language — in fact, you may have heard this line before: 'In JavaScript, everything is an object.'<br><br>While an understanding of objects is important to understand the inner workings of JavaScript functions or JavaScript's object-oriented capabilities, JavaScript objects at a basic level are actually just <dfn>key-value pair</dfn> stores, a commonly used data structure across almost all programming languages. Here, we will confine our discussion to JavaScript objects in this capacity.
|
|
||||||
Key-value pair data structures go by different names depending on the language and the specific details of the data structure. The terms <dfn>dictionary</dfn>, <dfn>map</dfn>, and <dfn>hash table</dfn> all refer to the notion of a data structure in which specific keys, or properties, are mapped to specific values.<br><br>Objects, and other similar key-value pair data structures, offer some very useful benefits. One clear benefit is that they allow us to structure our data in an intuitive way; properties can be nested to an arbitrary depth, and values can be anything, including arrays and even other objects.<br><br>Largely due to this flexibility, objects are also the foundation for <dfn>JavaScript Object Notation</dfn>, or <dfn>JSON</dfn>, which is a widely used method of sending data across the web.
|
|
||||||
Another powerful advantage of key-value pair data structures is <dfn>constant lookup time</dfn>. What this means, is that when you request the value of a specific property, you will get the value back in the same amount of time (theoretically) regardless of the number of entries in the object. If you had an object with 5 entries or one that held a collection of 1,000,000, you could still retrieve property values or check if a key exists in the same amount of time.<br><br>The reason for this fast lookup time, is that internally, the object is storing properties using a hashing mechanism which allows it to know exactly where it has stored different property values. If you want to learn more about this please take a look at the optional Advanced Data Structures challenges. All you should remember for now is that <strong>performant access to flexibly structured data make key-value stores very attractive data structures useful in a wide variety of settings</strong>.
|
|
||||||
<br><br>In JavaScript, objects are written as comma-separated lists of key-value pairs, wrapped in curly brackets, with each key and its assigned value separated by a colon:<br> <code>{ key1: 'val-1', key2: 'val-2' }</code><br><br>In the next few challenges, we will examine JavaScript objects more closely, and take a look at <dfn>methods</dfn> and techniques that allow us to access, store, and manipulate an object's data.<br><br>Note that throughout the scope of this discussion, and in general when considering JavaScript objects, the terms <dfn>key</dfn> and <dfn>property</dfn> will be used interchangeably.
|
|
||||||
|
|
||||||
|
This is a stub introduction
|
@ -0,0 +1,8 @@
|
|||||||
|
---
|
||||||
|
title: Introduction to the Intermediate Algorithm Scripting Challenges
|
||||||
|
block: Intermediate Algorithm Scripting
|
||||||
|
superBlock: JavaScript Algorithms and Data Structures
|
||||||
|
---
|
||||||
|
## Introduction to the Intermediate Algorithm Scripting Challenges
|
||||||
|
|
||||||
|
This is a stub introduction
|
@ -24,7 +24,8 @@ const Layout = ({ children, data: { allChallengeNode: { edges } } }) => (
|
|||||||
]}
|
]}
|
||||||
/>
|
/>
|
||||||
<Header />
|
<Header />
|
||||||
<ReflexContainer className='app-wrapper' orientation='vertical'>
|
<div className='app-wrapper'>
|
||||||
|
<ReflexContainer orientation='vertical'>
|
||||||
<ReflexElement flex={0.2} minSize={100}>
|
<ReflexElement flex={0.2} minSize={100}>
|
||||||
<aside id='map'>
|
<aside id='map'>
|
||||||
<Map
|
<Map
|
||||||
@ -41,6 +42,7 @@ const Layout = ({ children, data: { allChallengeNode: { edges } } }) => (
|
|||||||
<main>{children()}</main>
|
<main>{children()}</main>
|
||||||
</ReflexElement>
|
</ReflexElement>
|
||||||
</ReflexContainer>
|
</ReflexContainer>
|
||||||
|
</div>
|
||||||
</Fragment>
|
</Fragment>
|
||||||
);
|
);
|
||||||
|
|
||||||
|
@ -1,6 +1,3 @@
|
|||||||
.app-wrapper {
|
|
||||||
max-height: calc(100vh - (45px + 1.45rem));
|
|
||||||
}
|
|
||||||
|
|
||||||
main {
|
main {
|
||||||
height: 100%;
|
height: 100%;
|
||||||
@ -23,3 +20,7 @@ main {
|
|||||||
.reflex-layout.vertical > .reflex-splitter{
|
.reflex-layout.vertical > .reflex-splitter{
|
||||||
width: 5px;
|
width: 5px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.app-wrapper {
|
||||||
|
height: calc(100vh - (38px + 0.45rem));
|
||||||
|
}
|
@ -20,7 +20,8 @@ import {
|
|||||||
initConsole,
|
initConsole,
|
||||||
updateConsole,
|
updateConsole,
|
||||||
checkChallenge,
|
checkChallenge,
|
||||||
updateTests
|
updateTests,
|
||||||
|
disableJSOnError
|
||||||
} from './';
|
} from './';
|
||||||
import { buildFromFiles } from '../utils/build';
|
import { buildFromFiles } from '../utils/build';
|
||||||
import {
|
import {
|
||||||
@ -101,7 +102,7 @@ function executeChallengeEpic(action$, { getState }, { document }) {
|
|||||||
.do(frameTests)
|
.do(frameTests)
|
||||||
.ignoreElements()
|
.ignoreElements()
|
||||||
.startWith(initConsole('// running test'))
|
.startWith(initConsole('// running test'))
|
||||||
.catch(err => console.log(err));
|
.catch(err => disableJSOnError(err));
|
||||||
})
|
})
|
||||||
);
|
);
|
||||||
return merge(buildAndFrameChallenge, challengeResults);
|
return merge(buildAndFrameChallenge, challengeResults);
|
||||||
|
Reference in New Issue
Block a user