├── README.md └── js-curriculum.jpg /README.md: -------------------------------------------------------------------------------- 1 | # JavaScript Curriculum - by DSC KIET 2 | 3 | Before moving to a framework, it’s important to learn some of the key concepts in JavaScript. We have prepared a curriculum for young developers out there. We strongly believe this curriculum is best-suited to kickstart your developer journey. 4 | 5 | Star this repoistry for easy accessibility. We will be updating these topics with the best resources to learn them. 6 | 7 | For any help/support, contact us at dsckiet@gmail.com 8 | 9 | ![words by a developer from facebook and the creater of react](https://github.com/dsckiet/javascript-curriculum/blob/master/js-curriculum.jpg) 10 | 11 | >## **JS Variables and Values** 12 | 13 | - NaN and Infinity 14 | 15 | - var, let and const 16 | 17 | - Null and Undefined 18 | 19 | - Type Conversion 20 | 21 | - Date and Time 22 | 23 | 24 | 25 | >## **Control Flow and Logics** 26 | 27 | - Comparison ( == or === ) 28 | 29 | - Conditional Statements 30 | 31 | - Logical Operators 32 | 33 | 34 | 35 | >## **Array** 36 | 37 | - Push and Pop 38 | 39 | - Shift and Unshift 40 | 41 | - Concat 42 | 43 | - Includes and IndexOf 44 | 45 | - Reverse and Join 46 | 47 | - Slice and Splice 48 | 49 | - Sorting 50 | 51 | 52 | 53 | >## **Objects - Core of JS** 54 | 55 | - Objects and its operations 56 | 57 | 58 | 59 | >## **Loops** 60 | 61 | - For, While, Do while 62 | 63 | - Infinity Loops 64 | 65 | - Break and Continue 66 | 67 | - For...Of, For...In, ForEach 68 | 69 | 70 | 71 | >## **Functions** 72 | 73 | - Arguments and Parameters 74 | 75 | - Return Statement 76 | 77 | 78 | 79 | >## **Advanced Functions** 80 | 81 | - Function Scope, Block Scope, Lexical Scope 82 | 83 | - Higher-Order Functions 84 | 85 | - Self-Invoked Functions (IIFE) 86 | 87 | - Functions as Arguments 88 | 89 | - Functions as Return Values 90 | 91 | - Callbacks 92 | 93 | - Hoisting 94 | 95 | 96 | 97 | >## **Playground of Functions** 98 | 99 | - forEach 100 | 101 | - Map, Filter, Reduce 102 | 103 | - Arrow Functions; Implicit Returns 104 | 105 | - Array.find 106 | 107 | 108 | 109 | >## **More Fun** 110 | 111 | - Spread in Function Calls, Arrays, Objects 112 | 113 | - Destructuring Arrays, Objects, Parameters 114 | 115 | - Everything about this keyword 116 | 117 | - Rest and Default Parameters 118 | 119 | 120 | 121 | >## **Asynchronous, Callbacks and Promises** 122 | 123 | - Call Stack 124 | 125 | - Single-Threaded 126 | 127 | - Asynchronous Callbacks 128 | 129 | - Callback Hell 130 | 131 | - Promises 132 | 133 | - Returning promises from functions 134 | 135 | - Resolve/Reject 136 | 137 | 138 | 139 | > ## **Async and Await** 140 | 141 | - Async and Await 142 | 143 | - Error handling in an async function 144 | 145 | - Multiple awaits 146 | 147 | - Parallel vs Sequential Requests 148 | 149 | - Promise.all 150 | 151 | - Handle promise rejections using .catch() or try-catch blocks 152 | 153 | 154 | 155 | > ## **More, but Important** 156 | 157 | - Prototypes 158 | 159 | - Closures 160 | 161 | - Bind, Call and Apply 162 | 163 | - Event Loop 164 | -------------------------------------------------------------------------------- /js-curriculum.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dsckiet/javascript-curriculum/HEAD/js-curriculum.jpg --------------------------------------------------------------------------------