diff --git a/Basic-JavaScript/.DS_Store b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/.DS_Store
similarity index 100%
rename from Basic-JavaScript/.DS_Store
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/.DS_Store
diff --git a/Basic-JavaScript/001-CommentYourJavaScriptCode.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/001-CommentYourJavaScriptCode.js
similarity index 100%
rename from Basic-JavaScript/001-CommentYourJavaScriptCode.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/001-CommentYourJavaScriptCode.js
diff --git a/Basic-JavaScript/002-DeclareJavaScriptVariables.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/002-DeclareJavaScriptVariables.js
similarity index 100%
rename from Basic-JavaScript/002-DeclareJavaScriptVariables.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/002-DeclareJavaScriptVariables.js
diff --git a/Basic-JavaScript/003-StoringValueswiththeAssignmentOperator.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/003-StoringValueswiththeAssignmentOperator.js
similarity index 100%
rename from Basic-JavaScript/003-StoringValueswiththeAssignmentOperator.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/003-StoringValueswiththeAssignmentOperator.js
diff --git a/Basic-JavaScript/004-AssigningtheValueofOneVariabletoAnother.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/004-AssigningtheValueofOneVariabletoAnother.js
similarity index 100%
rename from Basic-JavaScript/004-AssigningtheValueofOneVariabletoAnother.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/004-AssigningtheValueofOneVariabletoAnother.js
diff --git a/Basic-JavaScript/005-InitializingVariableswiththeAssignmentOperator.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/005-InitializingVariableswiththeAssignmentOperator.js
similarity index 100%
rename from Basic-JavaScript/005-InitializingVariableswiththeAssignmentOperator.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/005-InitializingVariableswiththeAssignmentOperator.js
diff --git a/Basic-JavaScript/006-UnderstandingUninitializedVariables.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/006-UnderstandingUninitializedVariables.js
similarity index 100%
rename from Basic-JavaScript/006-UnderstandingUninitializedVariables.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/006-UnderstandingUninitializedVariables.js
diff --git a/Basic-JavaScript/007-UnderstandingCaseSensitivityinVariables.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/007-UnderstandingCaseSensitivityinVariables.js
similarity index 100%
rename from Basic-JavaScript/007-UnderstandingCaseSensitivityinVariables.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/007-UnderstandingCaseSensitivityinVariables.js
diff --git a/Basic-JavaScript/008-AddTwoNumberswithJavaScript.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/008-AddTwoNumberswithJavaScript.js
similarity index 100%
rename from Basic-JavaScript/008-AddTwoNumberswithJavaScript.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/008-AddTwoNumberswithJavaScript.js
diff --git a/Basic-JavaScript/009-SubtractOneNumberfromAnotherwithJavaScript.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/009-SubtractOneNumberfromAnotherwithJavaScript.js
similarity index 100%
rename from Basic-JavaScript/009-SubtractOneNumberfromAnotherwithJavaScript.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/009-SubtractOneNumberfromAnotherwithJavaScript.js
diff --git a/Basic-JavaScript/010-MultiplyTwoNumberswithJavaScript.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/010-MultiplyTwoNumberswithJavaScript.js
similarity index 100%
rename from Basic-JavaScript/010-MultiplyTwoNumberswithJavaScript.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/010-MultiplyTwoNumberswithJavaScript.js
diff --git a/Basic-JavaScript/011-DivideOneNumberbyAnotherwithJavaScript.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/011-DivideOneNumberbyAnotherwithJavaScript.js
similarity index 100%
rename from Basic-JavaScript/011-DivideOneNumberbyAnotherwithJavaScript.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/011-DivideOneNumberbyAnotherwithJavaScript.js
diff --git a/Basic-JavaScript/012-IncrementaNumberwithJavaScript.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/012-IncrementaNumberwithJavaScript.js
similarity index 100%
rename from Basic-JavaScript/012-IncrementaNumberwithJavaScript.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/012-IncrementaNumberwithJavaScript.js
diff --git a/Basic-JavaScript/013-DecrementaNumberwithJavaScript.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/013-DecrementaNumberwithJavaScript.js
similarity index 100%
rename from Basic-JavaScript/013-DecrementaNumberwithJavaScript.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/013-DecrementaNumberwithJavaScript.js
diff --git a/Basic-JavaScript/014-CreateDecimalNumberswithJavaScript.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/014-CreateDecimalNumberswithJavaScript.js
similarity index 100%
rename from Basic-JavaScript/014-CreateDecimalNumberswithJavaScript.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/014-CreateDecimalNumberswithJavaScript.js
diff --git a/Basic-JavaScript/015-MultiplyTwoDecimalswithJavaScript.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/015-MultiplyTwoDecimalswithJavaScript.js
similarity index 100%
rename from Basic-JavaScript/015-MultiplyTwoDecimalswithJavaScript.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/015-MultiplyTwoDecimalswithJavaScript.js
diff --git a/Basic-JavaScript/016-DivideOneDecimalbyAnotherwithJavaScript.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/016-DivideOneDecimalbyAnotherwithJavaScript.js
similarity index 100%
rename from Basic-JavaScript/016-DivideOneDecimalbyAnotherwithJavaScript.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/016-DivideOneDecimalbyAnotherwithJavaScript.js
diff --git a/Basic-JavaScript/017-FindingaRemainderinJavaScript.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/017-FindingaRemainderinJavaScript.js
similarity index 100%
rename from Basic-JavaScript/017-FindingaRemainderinJavaScript.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/017-FindingaRemainderinJavaScript.js
diff --git a/Basic-JavaScript/018-CompoundAssignmentWithAugmentedAddition.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/018-CompoundAssignmentWithAugmentedAddition.js
similarity index 100%
rename from Basic-JavaScript/018-CompoundAssignmentWithAugmentedAddition.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/018-CompoundAssignmentWithAugmentedAddition.js
diff --git a/Basic-JavaScript/019-CompoundAssignmentWithAugmentedSubtraction.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/019-CompoundAssignmentWithAugmentedSubtraction.js
similarity index 100%
rename from Basic-JavaScript/019-CompoundAssignmentWithAugmentedSubtraction.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/019-CompoundAssignmentWithAugmentedSubtraction.js
diff --git a/Basic-JavaScript/020-CompoundAssignmentWithAugmentedMultiplication.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/020-CompoundAssignmentWithAugmentedMultiplication.js
similarity index 100%
rename from Basic-JavaScript/020-CompoundAssignmentWithAugmentedMultiplication.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/020-CompoundAssignmentWithAugmentedMultiplication.js
diff --git a/Basic-JavaScript/021-CompoundAssignmentWithAugmentedDivision.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/021-CompoundAssignmentWithAugmentedDivision.js
similarity index 100%
rename from Basic-JavaScript/021-CompoundAssignmentWithAugmentedDivision.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/021-CompoundAssignmentWithAugmentedDivision.js
diff --git a/Basic-JavaScript/022-DeclareStringVariables.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/022-DeclareStringVariables.js
similarity index 100%
rename from Basic-JavaScript/022-DeclareStringVariables.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/022-DeclareStringVariables.js
diff --git a/Basic-JavaScript/023-EscapingLiteralQuotesinStrings.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/023-EscapingLiteralQuotesinStrings.js
similarity index 100%
rename from Basic-JavaScript/023-EscapingLiteralQuotesinStrings.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/023-EscapingLiteralQuotesinStrings.js
diff --git a/Basic-JavaScript/024-QuotingStringswithSingleQuotes.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/024-QuotingStringswithSingleQuotes.js
similarity index 100%
rename from Basic-JavaScript/024-QuotingStringswithSingleQuotes.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/024-QuotingStringswithSingleQuotes.js
diff --git a/Basic-JavaScript/025-EscapeSequencesinStrings.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/025-EscapeSequencesinStrings.js
similarity index 100%
rename from Basic-JavaScript/025-EscapeSequencesinStrings.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/025-EscapeSequencesinStrings.js
diff --git a/Basic-JavaScript/026-ConcatenatingStringswithPlusOperator.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/026-ConcatenatingStringswithPlusOperator.js
similarity index 100%
rename from Basic-JavaScript/026-ConcatenatingStringswithPlusOperator.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/026-ConcatenatingStringswithPlusOperator.js
diff --git a/Basic-JavaScript/027-ConcatenatingStringswiththePlusEqualsOperator.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/027-ConcatenatingStringswiththePlusEqualsOperator.js
similarity index 100%
rename from Basic-JavaScript/027-ConcatenatingStringswiththePlusEqualsOperator.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/027-ConcatenatingStringswiththePlusEqualsOperator.js
diff --git a/Basic-JavaScript/028-ConstructingStringswithVariables.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/028-ConstructingStringswithVariables.js
similarity index 100%
rename from Basic-JavaScript/028-ConstructingStringswithVariables.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/028-ConstructingStringswithVariables.js
diff --git a/Basic-JavaScript/029-AppendingVariablestoStrings.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/029-AppendingVariablestoStrings.js
similarity index 100%
rename from Basic-JavaScript/029-AppendingVariablestoStrings.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/029-AppendingVariablestoStrings.js
diff --git a/Basic-JavaScript/030-FindtheLengthofaString.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/030-FindtheLengthofaString.js
similarity index 100%
rename from Basic-JavaScript/030-FindtheLengthofaString.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/030-FindtheLengthofaString.js
diff --git a/Basic-JavaScript/031-UseBracketNotationtoFindtheFirstCharacterinaString.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/031-UseBracketNotationtoFindtheFirstCharacterinaString.js
similarity index 100%
rename from Basic-JavaScript/031-UseBracketNotationtoFindtheFirstCharacterinaString.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/031-UseBracketNotationtoFindtheFirstCharacterinaString.js
diff --git a/Basic-JavaScript/032-UnderstandStringImmutability.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/032-UnderstandStringImmutability.js
similarity index 100%
rename from Basic-JavaScript/032-UnderstandStringImmutability.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/032-UnderstandStringImmutability.js
diff --git a/Basic-JavaScript/033-UseBracketNotationtoFindtheNthCharacterinaString.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/033-UseBracketNotationtoFindtheNthCharacterinaString.js
similarity index 100%
rename from Basic-JavaScript/033-UseBracketNotationtoFindtheNthCharacterinaString.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/033-UseBracketNotationtoFindtheNthCharacterinaString.js
diff --git a/Basic-JavaScript/034-UseBracketNotationtoFindtheLastCharacterinaString.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/034-UseBracketNotationtoFindtheLastCharacterinaString.js
similarity index 100%
rename from Basic-JavaScript/034-UseBracketNotationtoFindtheLastCharacterinaString.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/034-UseBracketNotationtoFindtheLastCharacterinaString.js
diff --git a/Basic-JavaScript/035-UseBracketNotationtoFindtheNth-to-LastCharacterinaString.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/035-UseBracketNotationtoFindtheNth-to-LastCharacterinaString.js
similarity index 100%
rename from Basic-JavaScript/035-UseBracketNotationtoFindtheNth-to-LastCharacterinaString.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/035-UseBracketNotationtoFindtheNth-to-LastCharacterinaString.js
diff --git a/Basic-JavaScript/036-WordBlanks.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/036-WordBlanks.js
similarity index 100%
rename from Basic-JavaScript/036-WordBlanks.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/036-WordBlanks.js
diff --git a/Basic-JavaScript/037-StoreMultipleValuesinoneVariableusingJavaScriptArrays.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/037-StoreMultipleValuesinoneVariableusingJavaScriptArrays.js
similarity index 100%
rename from Basic-JavaScript/037-StoreMultipleValuesinoneVariableusingJavaScriptArrays.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/037-StoreMultipleValuesinoneVariableusingJavaScriptArrays.js
diff --git a/Basic-JavaScript/038-NestoneArraywithinAnotherArray.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/038-NestoneArraywithinAnotherArray.js
similarity index 100%
rename from Basic-JavaScript/038-NestoneArraywithinAnotherArray.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/038-NestoneArraywithinAnotherArray.js
diff --git a/Basic-JavaScript/039-AccessArrayDatawithIndexes.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/039-AccessArrayDatawithIndexes.js
similarity index 100%
rename from Basic-JavaScript/039-AccessArrayDatawithIndexes.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/039-AccessArrayDatawithIndexes.js
diff --git a/Basic-JavaScript/040-ModifyArrayDataWithIndexes.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/040-ModifyArrayDataWithIndexes.js
similarity index 100%
rename from Basic-JavaScript/040-ModifyArrayDataWithIndexes.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/040-ModifyArrayDataWithIndexes.js
diff --git a/Basic-JavaScript/041-AccessMulti-DimensionalArraysWithIndexes.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/041-AccessMulti-DimensionalArraysWithIndexes.js
similarity index 100%
rename from Basic-JavaScript/041-AccessMulti-DimensionalArraysWithIndexes.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/041-AccessMulti-DimensionalArraysWithIndexes.js
diff --git a/Basic-JavaScript/042-ManipulateArraysWithpush().js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/042-ManipulateArraysWithpush().js
similarity index 100%
rename from Basic-JavaScript/042-ManipulateArraysWithpush().js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/042-ManipulateArraysWithpush().js
diff --git a/Basic-JavaScript/043-ManipulateArraysWithpop().js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/043-ManipulateArraysWithpop().js
similarity index 100%
rename from Basic-JavaScript/043-ManipulateArraysWithpop().js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/043-ManipulateArraysWithpop().js
diff --git a/Basic-JavaScript/044-ManipulateArraysWithshift().js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/044-ManipulateArraysWithshift().js
similarity index 100%
rename from Basic-JavaScript/044-ManipulateArraysWithshift().js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/044-ManipulateArraysWithshift().js
diff --git a/Basic-JavaScript/045-ManipulateArraysWithunshift().js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/045-ManipulateArraysWithunshift().js
similarity index 100%
rename from Basic-JavaScript/045-ManipulateArraysWithunshift().js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/045-ManipulateArraysWithunshift().js
diff --git a/Basic-JavaScript/046-ShoppingList.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/046-ShoppingList.js
similarity index 100%
rename from Basic-JavaScript/046-ShoppingList.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/046-ShoppingList.js
diff --git a/Basic-JavaScript/047-WriteReusableJavaScriptwithFunctions.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/047-WriteReusableJavaScriptwithFunctions.js
similarity index 100%
rename from Basic-JavaScript/047-WriteReusableJavaScriptwithFunctions.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/047-WriteReusableJavaScriptwithFunctions.js
diff --git a/Basic-JavaScript/048-PassingValuestoFunctionswithArguments.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/048-PassingValuestoFunctionswithArguments.js
similarity index 100%
rename from Basic-JavaScript/048-PassingValuestoFunctionswithArguments.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/048-PassingValuestoFunctionswithArguments.js
diff --git a/Basic-JavaScript/049-GlobalScopeandFunctions.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/049-GlobalScopeandFunctions.js
similarity index 100%
rename from Basic-JavaScript/049-GlobalScopeandFunctions.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/049-GlobalScopeandFunctions.js
diff --git a/Basic-JavaScript/050-LocalScopeandFunctions.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/050-LocalScopeandFunctions.js
similarity index 100%
rename from Basic-JavaScript/050-LocalScopeandFunctions.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/050-LocalScopeandFunctions.js
diff --git a/Basic-JavaScript/051-Globalvs.LocalScopeinFunctions.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/051-Globalvs.LocalScopeinFunctions.js
similarity index 100%
rename from Basic-JavaScript/051-Globalvs.LocalScopeinFunctions.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/051-Globalvs.LocalScopeinFunctions.js
diff --git a/Basic-JavaScript/052-ReturnaValuefromaFunctionwithReturn.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/052-ReturnaValuefromaFunctionwithReturn.js
similarity index 100%
rename from Basic-JavaScript/052-ReturnaValuefromaFunctionwithReturn.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/052-ReturnaValuefromaFunctionwithReturn.js
diff --git a/Basic-JavaScript/053-UnderstandingUndefinedValuereturnedfromaFunction.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/053-UnderstandingUndefinedValuereturnedfromaFunction.js
similarity index 100%
rename from Basic-JavaScript/053-UnderstandingUndefinedValuereturnedfromaFunction.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/053-UnderstandingUndefinedValuereturnedfromaFunction.js
diff --git a/Basic-JavaScript/054-AssignmentwithaReturnedValue.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/054-AssignmentwithaReturnedValue.js
similarity index 100%
rename from Basic-JavaScript/054-AssignmentwithaReturnedValue.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/054-AssignmentwithaReturnedValue.js
diff --git a/Basic-JavaScript/055-StandinLine.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/055-StandinLine.js
similarity index 100%
rename from Basic-JavaScript/055-StandinLine.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/055-StandinLine.js
diff --git a/Basic-JavaScript/056-UnderstandingBooleanValues.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/056-UnderstandingBooleanValues.js
similarity index 100%
rename from Basic-JavaScript/056-UnderstandingBooleanValues.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/056-UnderstandingBooleanValues.js
diff --git a/Basic-JavaScript/057-UseConditionalLogicwithIfStatements.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/057-UseConditionalLogicwithIfStatements.js
similarity index 100%
rename from Basic-JavaScript/057-UseConditionalLogicwithIfStatements.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/057-UseConditionalLogicwithIfStatements.js
diff --git a/Basic-JavaScript/058-ComparisonwiththeEqualityOperator.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/058-ComparisonwiththeEqualityOperator.js
similarity index 100%
rename from Basic-JavaScript/058-ComparisonwiththeEqualityOperator.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/058-ComparisonwiththeEqualityOperator.js
diff --git a/Basic-JavaScript/059-ComparisonwiththeStrictEqualityOperator.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/059-ComparisonwiththeStrictEqualityOperator.js
similarity index 100%
rename from Basic-JavaScript/059-ComparisonwiththeStrictEqualityOperator.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/059-ComparisonwiththeStrictEqualityOperator.js
diff --git a/Basic-JavaScript/060-Practicecomparingdifferentvalues.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/060-Practicecomparingdifferentvalues.js
similarity index 100%
rename from Basic-JavaScript/060-Practicecomparingdifferentvalues.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/060-Practicecomparingdifferentvalues.js
diff --git a/Basic-JavaScript/061-ComparisonwiththeInequalityOperator.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/061-ComparisonwiththeInequalityOperator.js
similarity index 100%
rename from Basic-JavaScript/061-ComparisonwiththeInequalityOperator.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/061-ComparisonwiththeInequalityOperator.js
diff --git a/Basic-JavaScript/062-ComparisonwiththeStrictInequalityOperator.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/062-ComparisonwiththeStrictInequalityOperator.js
similarity index 100%
rename from Basic-JavaScript/062-ComparisonwiththeStrictInequalityOperator.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/062-ComparisonwiththeStrictInequalityOperator.js
diff --git a/Basic-JavaScript/063-ComparisonwiththeGreaterThanOperator.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/063-ComparisonwiththeGreaterThanOperator.js
similarity index 100%
rename from Basic-JavaScript/063-ComparisonwiththeGreaterThanOperator.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/063-ComparisonwiththeGreaterThanOperator.js
diff --git a/Basic-JavaScript/064-ComparisonwiththeGreaterThanOrEqualToOperator.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/064-ComparisonwiththeGreaterThanOrEqualToOperator.js
similarity index 100%
rename from Basic-JavaScript/064-ComparisonwiththeGreaterThanOrEqualToOperator.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/064-ComparisonwiththeGreaterThanOrEqualToOperator.js
diff --git a/Basic-JavaScript/065-ComparisonwiththeLessThanOperator.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/065-ComparisonwiththeLessThanOperator.js
similarity index 100%
rename from Basic-JavaScript/065-ComparisonwiththeLessThanOperator.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/065-ComparisonwiththeLessThanOperator.js
diff --git a/Basic-JavaScript/066-ComparisonwiththeLessThanOrEqualToOperator.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/066-ComparisonwiththeLessThanOrEqualToOperator.js
similarity index 100%
rename from Basic-JavaScript/066-ComparisonwiththeLessThanOrEqualToOperator.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/066-ComparisonwiththeLessThanOrEqualToOperator.js
diff --git a/Basic-JavaScript/067-ComparisonswiththeLogicalAndOperator.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/067-ComparisonswiththeLogicalAndOperator.js
similarity index 100%
rename from Basic-JavaScript/067-ComparisonswiththeLogicalAndOperator.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/067-ComparisonswiththeLogicalAndOperator.js
diff --git a/Basic-JavaScript/068-ComparisonswiththeLogicalOrOperator.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/068-ComparisonswiththeLogicalOrOperator.js
similarity index 100%
rename from Basic-JavaScript/068-ComparisonswiththeLogicalOrOperator.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/068-ComparisonswiththeLogicalOrOperator.js
diff --git a/Basic-JavaScript/069-IntroducingElseStatements.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/069-IntroducingElseStatements.js
similarity index 100%
rename from Basic-JavaScript/069-IntroducingElseStatements.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/069-IntroducingElseStatements.js
diff --git a/Basic-JavaScript/070-IntroducingElseIfStatements.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/070-IntroducingElseIfStatements.js
similarity index 100%
rename from Basic-JavaScript/070-IntroducingElseIfStatements.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/070-IntroducingElseIfStatements.js
diff --git a/Basic-JavaScript/071-LogicalOrderinIfElseStatements.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/071-LogicalOrderinIfElseStatements.js
similarity index 100%
rename from Basic-JavaScript/071-LogicalOrderinIfElseStatements.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/071-LogicalOrderinIfElseStatements.js
diff --git a/Basic-JavaScript/072-ChainingIfElseStatements.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/072-ChainingIfElseStatements.js
similarity index 100%
rename from Basic-JavaScript/072-ChainingIfElseStatements.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/072-ChainingIfElseStatements.js
diff --git a/Basic-JavaScript/073-GolfCode.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/073-GolfCode.js
similarity index 100%
rename from Basic-JavaScript/073-GolfCode.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/073-GolfCode.js
diff --git a/Basic-JavaScript/074-SelectingfromManyOptionswithSwitchStatements.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/074-SelectingfromManyOptionswithSwitchStatements.js
similarity index 100%
rename from Basic-JavaScript/074-SelectingfromManyOptionswithSwitchStatements.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/074-SelectingfromManyOptionswithSwitchStatements.js
diff --git a/Basic-JavaScript/075-AddingaDefaultOptioninSwitchStatements.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/075-AddingaDefaultOptioninSwitchStatements.js
similarity index 100%
rename from Basic-JavaScript/075-AddingaDefaultOptioninSwitchStatements.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/075-AddingaDefaultOptioninSwitchStatements.js
diff --git a/Basic-JavaScript/076-MultipleIdenticalOptionsinSwitchStatements.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/076-MultipleIdenticalOptionsinSwitchStatements.js
similarity index 100%
rename from Basic-JavaScript/076-MultipleIdenticalOptionsinSwitchStatements.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/076-MultipleIdenticalOptionsinSwitchStatements.js
diff --git a/Basic-JavaScript/077-ReplacingIfElseChainswithSwitch.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/077-ReplacingIfElseChainswithSwitch.js
similarity index 100%
rename from Basic-JavaScript/077-ReplacingIfElseChainswithSwitch.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/077-ReplacingIfElseChainswithSwitch.js
diff --git a/Basic-JavaScript/078-ReturningBooleanValuesfromFunctions.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/078-ReturningBooleanValuesfromFunctions.js
similarity index 100%
rename from Basic-JavaScript/078-ReturningBooleanValuesfromFunctions.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/078-ReturningBooleanValuesfromFunctions.js
diff --git a/Basic-JavaScript/079-ReturnEarlyPatternforFunctions.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/079-ReturnEarlyPatternforFunctions.js
similarity index 100%
rename from Basic-JavaScript/079-ReturnEarlyPatternforFunctions.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/079-ReturnEarlyPatternforFunctions.js
diff --git a/Basic-JavaScript/080-CountingCards.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/080-CountingCards.js
similarity index 100%
rename from Basic-JavaScript/080-CountingCards.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/080-CountingCards.js
diff --git a/Basic-JavaScript/081-BuildJavaScriptObjects.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/081-BuildJavaScriptObjects.js
similarity index 100%
rename from Basic-JavaScript/081-BuildJavaScriptObjects.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/081-BuildJavaScriptObjects.js
diff --git a/Basic-JavaScript/082-AccessingObjectPropertieswithDotNotation.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/082-AccessingObjectPropertieswithDotNotation.js
similarity index 100%
rename from Basic-JavaScript/082-AccessingObjectPropertieswithDotNotation.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/082-AccessingObjectPropertieswithDotNotation.js
diff --git a/Basic-JavaScript/083-AccessingObjectPropertieswithBracketNotation.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/083-AccessingObjectPropertieswithBracketNotation.js
similarity index 100%
rename from Basic-JavaScript/083-AccessingObjectPropertieswithBracketNotation.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/083-AccessingObjectPropertieswithBracketNotation.js
diff --git a/Basic-JavaScript/084-AccessingObjectPropertieswithVariables.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/084-AccessingObjectPropertieswithVariables.js
similarity index 100%
rename from Basic-JavaScript/084-AccessingObjectPropertieswithVariables.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/084-AccessingObjectPropertieswithVariables.js
diff --git a/Basic-JavaScript/085-UpdatingObjectProperties.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/085-UpdatingObjectProperties.js
similarity index 100%
rename from Basic-JavaScript/085-UpdatingObjectProperties.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/085-UpdatingObjectProperties.js
diff --git a/Basic-JavaScript/086-AddNewPropertiestoaJavaScriptObject.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/086-AddNewPropertiestoaJavaScriptObject.js
similarity index 100%
rename from Basic-JavaScript/086-AddNewPropertiestoaJavaScriptObject.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/086-AddNewPropertiestoaJavaScriptObject.js
diff --git a/Basic-JavaScript/087-DeletePropertiesfromaJavaScriptObject.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/087-DeletePropertiesfromaJavaScriptObject.js
similarity index 100%
rename from Basic-JavaScript/087-DeletePropertiesfromaJavaScriptObject.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/087-DeletePropertiesfromaJavaScriptObject.js
diff --git a/Basic-JavaScript/088-UsingObjectsforLookups.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/088-UsingObjectsforLookups.js
similarity index 100%
rename from Basic-JavaScript/088-UsingObjectsforLookups.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/088-UsingObjectsforLookups.js
diff --git a/Basic-JavaScript/089-TestingObjectsforProperties.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/089-TestingObjectsforProperties.js
similarity index 100%
rename from Basic-JavaScript/089-TestingObjectsforProperties.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/089-TestingObjectsforProperties.js
diff --git a/Basic-JavaScript/090-ManipulatingComplexObjects.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/090-ManipulatingComplexObjects.js
similarity index 100%
rename from Basic-JavaScript/090-ManipulatingComplexObjects.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/090-ManipulatingComplexObjects.js
diff --git a/Basic-JavaScript/091-AccessingNestedObjects.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/091-AccessingNestedObjects.js
similarity index 100%
rename from Basic-JavaScript/091-AccessingNestedObjects.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/091-AccessingNestedObjects.js
diff --git a/Basic-JavaScript/092-AccessingNestedArrays.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/092-AccessingNestedArrays.js
similarity index 100%
rename from Basic-JavaScript/092-AccessingNestedArrays.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/092-AccessingNestedArrays.js
diff --git a/Basic-JavaScript/093-RecordCollection.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/093-RecordCollection.js
similarity index 100%
rename from Basic-JavaScript/093-RecordCollection.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/093-RecordCollection.js
diff --git a/Basic-JavaScript/094-IteratewithJavaScriptWhileLoops.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/094-IteratewithJavaScriptWhileLoops.js
similarity index 100%
rename from Basic-JavaScript/094-IteratewithJavaScriptWhileLoops.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/094-IteratewithJavaScriptWhileLoops.js
diff --git a/Basic-JavaScript/095-IteratewithJavaScriptForLoops.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/095-IteratewithJavaScriptForLoops.js
similarity index 100%
rename from Basic-JavaScript/095-IteratewithJavaScriptForLoops.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/095-IteratewithJavaScriptForLoops.js
diff --git a/Basic-JavaScript/096-IterateOddNumbersWithaForLoop.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/096-IterateOddNumbersWithaForLoop.js
similarity index 100%
rename from Basic-JavaScript/096-IterateOddNumbersWithaForLoop.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/096-IterateOddNumbersWithaForLoop.js
diff --git a/Basic-JavaScript/097-CountBackwardsWithaForLoop.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/097-CountBackwardsWithaForLoop.js
similarity index 100%
rename from Basic-JavaScript/097-CountBackwardsWithaForLoop.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/097-CountBackwardsWithaForLoop.js
diff --git a/Basic-JavaScript/098-IterateThroughanArraywithaForLoop.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/098-IterateThroughanArraywithaForLoop.js
similarity index 100%
rename from Basic-JavaScript/098-IterateThroughanArraywithaForLoop.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/098-IterateThroughanArraywithaForLoop.js
diff --git a/Basic-JavaScript/099-NestingForLoops.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/099-NestingForLoops.js
similarity index 100%
rename from Basic-JavaScript/099-NestingForLoops.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/099-NestingForLoops.js
diff --git a/Basic-JavaScript/100-IteratewithJavaScriptDo...WhileLoops.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/100-IteratewithJavaScriptDo...WhileLoops.js
similarity index 100%
rename from Basic-JavaScript/100-IteratewithJavaScriptDo...WhileLoops.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/100-IteratewithJavaScriptDo...WhileLoops.js
diff --git a/Basic-JavaScript/101-ReplaceLoopsusingRecursion.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/101-ReplaceLoopsusingRecursion.js
similarity index 100%
rename from Basic-JavaScript/101-ReplaceLoopsusingRecursion.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/101-ReplaceLoopsusingRecursion.js
diff --git a/Basic-JavaScript/102-ProfileLookup.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/102-ProfileLookup.js
similarity index 100%
rename from Basic-JavaScript/102-ProfileLookup.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/102-ProfileLookup.js
diff --git a/Basic-JavaScript/103-GenerateRandomFractionswithJavaScript.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/103-GenerateRandomFractionswithJavaScript.js
similarity index 100%
rename from Basic-JavaScript/103-GenerateRandomFractionswithJavaScript.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/103-GenerateRandomFractionswithJavaScript.js
diff --git a/Basic-JavaScript/104-GenerateRandomWholeNumberswithJavaScript.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/104-GenerateRandomWholeNumberswithJavaScript.js
similarity index 100%
rename from Basic-JavaScript/104-GenerateRandomWholeNumberswithJavaScript.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/104-GenerateRandomWholeNumberswithJavaScript.js
diff --git a/Basic-JavaScript/105-GenerateRandomWholeNumberswithinaRange.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/105-GenerateRandomWholeNumberswithinaRange.js
similarity index 100%
rename from Basic-JavaScript/105-GenerateRandomWholeNumberswithinaRange.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/105-GenerateRandomWholeNumberswithinaRange.js
diff --git a/Basic-JavaScript/106-UsetheparseIntFunction.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/106-UsetheparseIntFunction.js
similarity index 100%
rename from Basic-JavaScript/106-UsetheparseIntFunction.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/106-UsetheparseIntFunction.js
diff --git a/Basic-JavaScript/107-UsetheparseIntFunctionwithaRadix.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/107-UsetheparseIntFunctionwithaRadix.js
similarity index 100%
rename from Basic-JavaScript/107-UsetheparseIntFunctionwithaRadix.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/107-UsetheparseIntFunctionwithaRadix.js
diff --git a/Basic-JavaScript/108-UsetheConditional(Ternary)Operator.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/108-UsetheConditional(Ternary)Operator.js
similarity index 100%
rename from Basic-JavaScript/108-UsetheConditional(Ternary)Operator.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/108-UsetheConditional(Ternary)Operator.js
diff --git a/Basic-JavaScript/109-UsetheConditional(Ternary)Operator.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/109-UsetheConditional(Ternary)Operator.js
similarity index 100%
rename from Basic-JavaScript/109-UsetheConditional(Ternary)Operator.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/109-UsetheConditional(Ternary)Operator.js
diff --git a/Basic-JavaScript/110-UseRecursiontoCreateaCountdown.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/110-UseRecursiontoCreateaCountdown.js
similarity index 100%
rename from Basic-JavaScript/110-UseRecursiontoCreateaCountdown.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/110-UseRecursiontoCreateaCountdown.js
diff --git a/Basic-JavaScript/111-UseRecursiontoCreateaRangeofNumbers.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/111-UseRecursiontoCreateaRangeofNumbers.js
similarity index 100%
rename from Basic-JavaScript/111-UseRecursiontoCreateaRangeofNumbers.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/111-UseRecursiontoCreateaRangeofNumbers.js
diff --git a/Basic-JavaScript/112-DeclareaReadOnlyVariablewiththeconstKeyword.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/112-DeclareaReadOnlyVariablewiththeconstKeyword.js
similarity index 100%
rename from Basic-JavaScript/112-DeclareaReadOnlyVariablewiththeconstKeyword.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/112-DeclareaReadOnlyVariablewiththeconstKeyword.js
diff --git a/Basic-JavaScript/113-ExploreDifferencesBetweenthevarandletKeywords.js b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/113-ExploreDifferencesBetweenthevarandletKeywords.js
similarity index 100%
rename from Basic-JavaScript/113-ExploreDifferencesBetweenthevarandletKeywords.js
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/113-ExploreDifferencesBetweenthevarandletKeywords.js
diff --git a/Basic-JavaScript/rename.sh b/JavaScript Algorithms and Data Structures/01-Basic-JavaScript/rename.sh
similarity index 100%
rename from Basic-JavaScript/rename.sh
rename to JavaScript Algorithms and Data Structures/01-Basic-JavaScript/rename.sh
diff --git a/ES6/01.Compare-Scopes-of-the-var-and-let-Keywords_script.js b/JavaScript Algorithms and Data Structures/02-ES6/01.Compare-Scopes-of-the-var-and-let-Keywords_script.js
similarity index 100%
rename from ES6/01.Compare-Scopes-of-the-var-and-let-Keywords_script.js
rename to JavaScript Algorithms and Data Structures/02-ES6/01.Compare-Scopes-of-the-var-and-let-Keywords_script.js
diff --git a/ES6/02.Mutate-an-Array-Declared-with-const_script.js b/JavaScript Algorithms and Data Structures/02-ES6/02.Mutate-an-Array-Declared-with-const_script.js
similarity index 100%
rename from ES6/02.Mutate-an-Array-Declared-with-const_script.js
rename to JavaScript Algorithms and Data Structures/02-ES6/02.Mutate-an-Array-Declared-with-const_script.js
diff --git a/ES6/03.Prevent-Object-Mutation_script.js b/JavaScript Algorithms and Data Structures/02-ES6/03.Prevent-Object-Mutation_script.js
similarity index 100%
rename from ES6/03.Prevent-Object-Mutation_script.js
rename to JavaScript Algorithms and Data Structures/02-ES6/03.Prevent-Object-Mutation_script.js
diff --git a/ES6/04.Use-Arrow-Functions-to-Write-Concise-Anonymous-Functions_script.js b/JavaScript Algorithms and Data Structures/02-ES6/04.Use-Arrow-Functions-to-Write-Concise-Anonymous-Functions_script.js
similarity index 100%
rename from ES6/04.Use-Arrow-Functions-to-Write-Concise-Anonymous-Functions_script.js
rename to JavaScript Algorithms and Data Structures/02-ES6/04.Use-Arrow-Functions-to-Write-Concise-Anonymous-Functions_script.js
diff --git a/ES6/05.Write-Arrow-Functions-with-Parameters_script.js b/JavaScript Algorithms and Data Structures/02-ES6/05.Write-Arrow-Functions-with-Parameters_script.js
similarity index 100%
rename from ES6/05.Write-Arrow-Functions-with-Parameters_script.js
rename to JavaScript Algorithms and Data Structures/02-ES6/05.Write-Arrow-Functions-with-Parameters_script.js
diff --git a/ES6/06.Set-Default-Parameters-for-Your-Functions_script.js b/JavaScript Algorithms and Data Structures/02-ES6/06.Set-Default-Parameters-for-Your-Functions_script.js
similarity index 100%
rename from ES6/06.Set-Default-Parameters-for-Your-Functions_script.js
rename to JavaScript Algorithms and Data Structures/02-ES6/06.Set-Default-Parameters-for-Your-Functions_script.js
diff --git a/ES6/07.Use-the-Rest-Parameter-with-Function-Parameters_script.js b/JavaScript Algorithms and Data Structures/02-ES6/07.Use-the-Rest-Parameter-with-Function-Parameters_script.js
similarity index 100%
rename from ES6/07.Use-the-Rest-Parameter-with-Function-Parameters_script.js
rename to JavaScript Algorithms and Data Structures/02-ES6/07.Use-the-Rest-Parameter-with-Function-Parameters_script.js
diff --git a/ES6/08.Use-the-Spread-Operator-to-Evaluate-Arrays-In-Place_script.js b/JavaScript Algorithms and Data Structures/02-ES6/08.Use-the-Spread-Operator-to-Evaluate-Arrays-In-Place_script.js
similarity index 100%
rename from ES6/08.Use-the-Spread-Operator-to-Evaluate-Arrays-In-Place_script.js
rename to JavaScript Algorithms and Data Structures/02-ES6/08.Use-the-Spread-Operator-to-Evaluate-Arrays-In-Place_script.js
diff --git a/ES6/09.Use-Destructuring-Assignment-to-Extract-Values-from-Objects_script.js b/JavaScript Algorithms and Data Structures/02-ES6/09.Use-Destructuring-Assignment-to-Extract-Values-from-Objects_script.js
similarity index 100%
rename from ES6/09.Use-Destructuring-Assignment-to-Extract-Values-from-Objects_script.js
rename to JavaScript Algorithms and Data Structures/02-ES6/09.Use-Destructuring-Assignment-to-Extract-Values-from-Objects_script.js
diff --git a/ES6/10.Use-Destructuring-Assignment-to-Assign-Variables-from-Objects_script.js b/JavaScript Algorithms and Data Structures/02-ES6/10.Use-Destructuring-Assignment-to-Assign-Variables-from-Objects_script.js
similarity index 100%
rename from ES6/10.Use-Destructuring-Assignment-to-Assign-Variables-from-Objects_script.js
rename to JavaScript Algorithms and Data Structures/02-ES6/10.Use-Destructuring-Assignment-to-Assign-Variables-from-Objects_script.js
diff --git a/ES6/11.Use-Destructuring-Assignment to-Assign-Variables-from-Nested-Objects_script.js b/JavaScript Algorithms and Data Structures/02-ES6/11.Use-Destructuring-Assignment to-Assign-Variables-from-Nested-Objects_script.js
similarity index 100%
rename from ES6/11.Use-Destructuring-Assignment to-Assign-Variables-from-Nested-Objects_script.js
rename to JavaScript Algorithms and Data Structures/02-ES6/11.Use-Destructuring-Assignment to-Assign-Variables-from-Nested-Objects_script.js
diff --git a/ES6/12.Use-Destructuring-Assignment-to-Assign-Variables-from-Arrays_script.js b/JavaScript Algorithms and Data Structures/02-ES6/12.Use-Destructuring-Assignment-to-Assign-Variables-from-Arrays_script.js
similarity index 100%
rename from ES6/12.Use-Destructuring-Assignment-to-Assign-Variables-from-Arrays_script.js
rename to JavaScript Algorithms and Data Structures/02-ES6/12.Use-Destructuring-Assignment-to-Assign-Variables-from-Arrays_script.js
diff --git a/ES6/13.Use-Destructuring-Assignment-with-the-Rest-Parameter-to-Reassign-Array-Elements_script.js b/JavaScript Algorithms and Data Structures/02-ES6/13.Use-Destructuring-Assignment-with-the-Rest-Parameter-to-Reassign-Array-Elements_script.js
similarity index 100%
rename from ES6/13.Use-Destructuring-Assignment-with-the-Rest-Parameter-to-Reassign-Array-Elements_script.js
rename to JavaScript Algorithms and Data Structures/02-ES6/13.Use-Destructuring-Assignment-with-the-Rest-Parameter-to-Reassign-Array-Elements_script.js
diff --git a/ES6/14.Use-Destructuring-Assignment-to-Pass-an-Object-as-a-Function's-Parameters_script.js b/JavaScript Algorithms and Data Structures/02-ES6/14.Use-Destructuring-Assignment-to-Pass-an-Object-as-a-Function's-Parameters_script.js
similarity index 100%
rename from ES6/14.Use-Destructuring-Assignment-to-Pass-an-Object-as-a-Function's-Parameters_script.js
rename to JavaScript Algorithms and Data Structures/02-ES6/14.Use-Destructuring-Assignment-to-Pass-an-Object-as-a-Function's-Parameters_script.js
diff --git a/ES6/15.Create-Strings-using-Template-Literals_script.js b/JavaScript Algorithms and Data Structures/02-ES6/15.Create-Strings-using-Template-Literals_script.js
similarity index 100%
rename from ES6/15.Create-Strings-using-Template-Literals_script.js
rename to JavaScript Algorithms and Data Structures/02-ES6/15.Create-Strings-using-Template-Literals_script.js
diff --git a/ES6/16.Write-Concise-Object-Literal-Declarations-Using-Object-Property-Shorthand_script.js b/JavaScript Algorithms and Data Structures/02-ES6/16.Write-Concise-Object-Literal-Declarations-Using-Object-Property-Shorthand_script.js
similarity index 100%
rename from ES6/16.Write-Concise-Object-Literal-Declarations-Using-Object-Property-Shorthand_script.js
rename to JavaScript Algorithms and Data Structures/02-ES6/16.Write-Concise-Object-Literal-Declarations-Using-Object-Property-Shorthand_script.js
diff --git a/ES6/17.Write-Concise-Declarative-Functions-with-ES6_script.js b/JavaScript Algorithms and Data Structures/02-ES6/17.Write-Concise-Declarative-Functions-with-ES6_script.js
similarity index 100%
rename from ES6/17.Write-Concise-Declarative-Functions-with-ES6_script.js
rename to JavaScript Algorithms and Data Structures/02-ES6/17.Write-Concise-Declarative-Functions-with-ES6_script.js
diff --git a/ES6/18.Use-class-Syntax-to-Define-a-Constructor-Function_script.js b/JavaScript Algorithms and Data Structures/02-ES6/18.Use-class-Syntax-to-Define-a-Constructor-Function_script.js
similarity index 100%
rename from ES6/18.Use-class-Syntax-to-Define-a-Constructor-Function_script.js
rename to JavaScript Algorithms and Data Structures/02-ES6/18.Use-class-Syntax-to-Define-a-Constructor-Function_script.js
diff --git a/ES6/19.Use-getters-and-setters-to-Control-Access-to-an-Object_script.js b/JavaScript Algorithms and Data Structures/02-ES6/19.Use-getters-and-setters-to-Control-Access-to-an-Object_script.js
similarity index 100%
rename from ES6/19.Use-getters-and-setters-to-Control-Access-to-an-Object_script.js
rename to JavaScript Algorithms and Data Structures/02-ES6/19.Use-getters-and-setters-to-Control-Access-to-an-Object_script.js
diff --git a/ES6/20.Create-a-Module-Script_index.html b/JavaScript Algorithms and Data Structures/02-ES6/20.Create-a-Module-Script_index.html
similarity index 100%
rename from ES6/20.Create-a-Module-Script_index.html
rename to JavaScript Algorithms and Data Structures/02-ES6/20.Create-a-Module-Script_index.html
diff --git a/ES6/21.Use-export-to-Share-a-Code-Block_script.js b/JavaScript Algorithms and Data Structures/02-ES6/21.Use-export-to-Share-a-Code-Block_script.js
similarity index 100%
rename from ES6/21.Use-export-to-Share-a-Code-Block_script.js
rename to JavaScript Algorithms and Data Structures/02-ES6/21.Use-export-to-Share-a-Code-Block_script.js
diff --git a/ES6/22.Reuse-JavaScript-Code-Using-import_script.js b/JavaScript Algorithms and Data Structures/02-ES6/22.Reuse-JavaScript-Code-Using-import_script.js
similarity index 100%
rename from ES6/22.Reuse-JavaScript-Code-Using-import_script.js
rename to JavaScript Algorithms and Data Structures/02-ES6/22.Reuse-JavaScript-Code-Using-import_script.js
diff --git a/ES6/23.Use-to-Import-Everything-from-a-File_script.js b/JavaScript Algorithms and Data Structures/02-ES6/23.Use-to-Import-Everything-from-a-File_script.js
similarity index 100%
rename from ES6/23.Use-to-Import-Everything-from-a-File_script.js
rename to JavaScript Algorithms and Data Structures/02-ES6/23.Use-to-Import-Everything-from-a-File_script.js
diff --git a/ES6/24.Create-an-Export-Fallback-with-export-default_script.js b/JavaScript Algorithms and Data Structures/02-ES6/24.Create-an-Export-Fallback-with-export-default_script.js
similarity index 100%
rename from ES6/24.Create-an-Export-Fallback-with-export-default_script.js
rename to JavaScript Algorithms and Data Structures/02-ES6/24.Create-an-Export-Fallback-with-export-default_script.js
diff --git a/ES6/25.Import-a-Default-Export_script.js b/JavaScript Algorithms and Data Structures/02-ES6/25.Import-a-Default-Export_script.js
similarity index 100%
rename from ES6/25.Import-a-Default-Export_script.js
rename to JavaScript Algorithms and Data Structures/02-ES6/25.Import-a-Default-Export_script.js
diff --git a/ES6/26.Create-a-JavaScript-Promise_script.js b/JavaScript Algorithms and Data Structures/02-ES6/26.Create-a-JavaScript-Promise_script.js
similarity index 100%
rename from ES6/26.Create-a-JavaScript-Promise_script.js
rename to JavaScript Algorithms and Data Structures/02-ES6/26.Create-a-JavaScript-Promise_script.js
diff --git a/ES6/27.Complete-a-Promise-with-resolve-and-reject_script.js b/JavaScript Algorithms and Data Structures/02-ES6/27.Complete-a-Promise-with-resolve-and-reject_script.js
similarity index 100%
rename from ES6/27.Complete-a-Promise-with-resolve-and-reject_script.js
rename to JavaScript Algorithms and Data Structures/02-ES6/27.Complete-a-Promise-with-resolve-and-reject_script.js
diff --git a/ES6/28.Handle-a-Fulfilled-Promise-with-then_script.js b/JavaScript Algorithms and Data Structures/02-ES6/28.Handle-a-Fulfilled-Promise-with-then_script.js
similarity index 100%
rename from ES6/28.Handle-a-Fulfilled-Promise-with-then_script.js
rename to JavaScript Algorithms and Data Structures/02-ES6/28.Handle-a-Fulfilled-Promise-with-then_script.js
diff --git a/ES6/29.Handle-a-Rejected-Promise-with-catch_script.js b/JavaScript Algorithms and Data Structures/02-ES6/29.Handle-a-Rejected-Promise-with-catch_script.js
similarity index 100%
rename from ES6/29.Handle-a-Rejected-Promise-with-catch_script.js
rename to JavaScript Algorithms and Data Structures/02-ES6/29.Handle-a-Rejected-Promise-with-catch_script.js
diff --git a/ES6/moverenamefile.sh b/JavaScript Algorithms and Data Structures/02-ES6/moverenamefile.sh
similarity index 100%
rename from ES6/moverenamefile.sh
rename to JavaScript Algorithms and Data Structures/02-ES6/moverenamefile.sh
diff --git a/Regular-Expressions/01.Using-the-Test-Method_script.js b/JavaScript Algorithms and Data Structures/03-Regular-Expressions/01.Using-the-Test-Method_script.js
similarity index 100%
rename from Regular-Expressions/01.Using-the-Test-Method_script.js
rename to JavaScript Algorithms and Data Structures/03-Regular-Expressions/01.Using-the-Test-Method_script.js
diff --git a/Regular-Expressions/02.Match-Literal-Strings_script.js b/JavaScript Algorithms and Data Structures/03-Regular-Expressions/02.Match-Literal-Strings_script.js
similarity index 100%
rename from Regular-Expressions/02.Match-Literal-Strings_script.js
rename to JavaScript Algorithms and Data Structures/03-Regular-Expressions/02.Match-Literal-Strings_script.js
diff --git a/Regular-Expressions/03.Match-a-Literal-String-with-Different-Possibilities_script.js b/JavaScript Algorithms and Data Structures/03-Regular-Expressions/03.Match-a-Literal-String-with-Different-Possibilities_script.js
similarity index 100%
rename from Regular-Expressions/03.Match-a-Literal-String-with-Different-Possibilities_script.js
rename to JavaScript Algorithms and Data Structures/03-Regular-Expressions/03.Match-a-Literal-String-with-Different-Possibilities_script.js
diff --git a/Regular-Expressions/04.Ignore-Case-While-Matching_script.js b/JavaScript Algorithms and Data Structures/03-Regular-Expressions/04.Ignore-Case-While-Matching_script.js
similarity index 100%
rename from Regular-Expressions/04.Ignore-Case-While-Matching_script.js
rename to JavaScript Algorithms and Data Structures/03-Regular-Expressions/04.Ignore-Case-While-Matching_script.js
diff --git a/Regular-Expressions/05.Extract-Matches_script.js b/JavaScript Algorithms and Data Structures/03-Regular-Expressions/05.Extract-Matches_script.js
similarity index 100%
rename from Regular-Expressions/05.Extract-Matches_script.js
rename to JavaScript Algorithms and Data Structures/03-Regular-Expressions/05.Extract-Matches_script.js
diff --git a/Regular-Expressions/06.Find-More-Than-the-First-Match_script.js b/JavaScript Algorithms and Data Structures/03-Regular-Expressions/06.Find-More-Than-the-First-Match_script.js
similarity index 100%
rename from Regular-Expressions/06.Find-More-Than-the-First-Match_script.js
rename to JavaScript Algorithms and Data Structures/03-Regular-Expressions/06.Find-More-Than-the-First-Match_script.js
diff --git a/Regular-Expressions/07.Match-with-Wildcard-Period_script.js b/JavaScript Algorithms and Data Structures/03-Regular-Expressions/07.Match-with-Wildcard-Period_script.js
similarity index 100%
rename from Regular-Expressions/07.Match-with-Wildcard-Period_script.js
rename to JavaScript Algorithms and Data Structures/03-Regular-Expressions/07.Match-with-Wildcard-Period_script.js
diff --git a/Regular-Expressions/08.Match-Single-with-Multiple-Possibilities_script.js b/JavaScript Algorithms and Data Structures/03-Regular-Expressions/08.Match-Single-with-Multiple-Possibilities_script.js
similarity index 100%
rename from Regular-Expressions/08.Match-Single-with-Multiple-Possibilities_script.js
rename to JavaScript Algorithms and Data Structures/03-Regular-Expressions/08.Match-Single-with-Multiple-Possibilities_script.js
diff --git a/Regular-Expressions/09.Match-Letters-of-the-Alphabet_script.js b/JavaScript Algorithms and Data Structures/03-Regular-Expressions/09.Match-Letters-of-the-Alphabet_script.js
similarity index 100%
rename from Regular-Expressions/09.Match-Letters-of-the-Alphabet_script.js
rename to JavaScript Algorithms and Data Structures/03-Regular-Expressions/09.Match-Letters-of-the-Alphabet_script.js
diff --git a/Regular-Expressions/10.Match-Numbers-and-Letters-of-the-Alphabet_script.js b/JavaScript Algorithms and Data Structures/03-Regular-Expressions/10.Match-Numbers-and-Letters-of-the-Alphabet_script.js
similarity index 100%
rename from Regular-Expressions/10.Match-Numbers-and-Letters-of-the-Alphabet_script.js
rename to JavaScript Algorithms and Data Structures/03-Regular-Expressions/10.Match-Numbers-and-Letters-of-the-Alphabet_script.js
diff --git a/Regular-Expressions/11.Match-Single-Characters-Not-Specified_script.js b/JavaScript Algorithms and Data Structures/03-Regular-Expressions/11.Match-Single-Characters-Not-Specified_script.js
similarity index 100%
rename from Regular-Expressions/11.Match-Single-Characters-Not-Specified_script.js
rename to JavaScript Algorithms and Data Structures/03-Regular-Expressions/11.Match-Single-Characters-Not-Specified_script.js
diff --git a/Regular-Expressions/12.Match-Characters-that-Occur-One-or-More-Times_script.js b/JavaScript Algorithms and Data Structures/03-Regular-Expressions/12.Match-Characters-that-Occur-One-or-More-Times_script.js
similarity index 100%
rename from Regular-Expressions/12.Match-Characters-that-Occur-One-or-More-Times_script.js
rename to JavaScript Algorithms and Data Structures/03-Regular-Expressions/12.Match-Characters-that-Occur-One-or-More-Times_script.js
diff --git a/Regular-Expressions/13.Match-Characters-that-Occur-Zero-or-More-Times_script.js b/JavaScript Algorithms and Data Structures/03-Regular-Expressions/13.Match-Characters-that-Occur-Zero-or-More-Times_script.js
similarity index 100%
rename from Regular-Expressions/13.Match-Characters-that-Occur-Zero-or-More-Times_script.js
rename to JavaScript Algorithms and Data Structures/03-Regular-Expressions/13.Match-Characters-that-Occur-Zero-or-More-Times_script.js
diff --git a/Regular-Expressions/14.Find-Characters-with-Lazy-Matching_script.js b/JavaScript Algorithms and Data Structures/03-Regular-Expressions/14.Find-Characters-with-Lazy-Matching_script.js
similarity index 100%
rename from Regular-Expressions/14.Find-Characters-with-Lazy-Matching_script.js
rename to JavaScript Algorithms and Data Structures/03-Regular-Expressions/14.Find-Characters-with-Lazy-Matching_script.js
diff --git a/Regular-Expressions/15.Find-One-or-More-Criminals-in-a-Hunt_script.js b/JavaScript Algorithms and Data Structures/03-Regular-Expressions/15.Find-One-or-More-Criminals-in-a-Hunt_script.js
similarity index 100%
rename from Regular-Expressions/15.Find-One-or-More-Criminals-in-a-Hunt_script.js
rename to JavaScript Algorithms and Data Structures/03-Regular-Expressions/15.Find-One-or-More-Criminals-in-a-Hunt_script.js
diff --git a/Regular-Expressions/16.Match-Beginning-String-Patterns_script.js b/JavaScript Algorithms and Data Structures/03-Regular-Expressions/16.Match-Beginning-String-Patterns_script.js
similarity index 100%
rename from Regular-Expressions/16.Match-Beginning-String-Patterns_script.js
rename to JavaScript Algorithms and Data Structures/03-Regular-Expressions/16.Match-Beginning-String-Patterns_script.js
diff --git a/Regular-Expressions/17.Match-Ending-String-Patterns_script.js b/JavaScript Algorithms and Data Structures/03-Regular-Expressions/17.Match-Ending-String-Patterns_script.js
similarity index 100%
rename from Regular-Expressions/17.Match-Ending-String-Patterns_script.js
rename to JavaScript Algorithms and Data Structures/03-Regular-Expressions/17.Match-Ending-String-Patterns_script.js
diff --git a/Regular-Expressions/18.Match-All-Letters-and-Numbers_script.js b/JavaScript Algorithms and Data Structures/03-Regular-Expressions/18.Match-All-Letters-and-Numbers_script.js
similarity index 100%
rename from Regular-Expressions/18.Match-All-Letters-and-Numbers_script.js
rename to JavaScript Algorithms and Data Structures/03-Regular-Expressions/18.Match-All-Letters-and-Numbers_script.js
diff --git a/Regular-Expressions/20.Match-All-Numbers_script.js b/JavaScript Algorithms and Data Structures/03-Regular-Expressions/20.Match-All-Numbers_script.js
similarity index 100%
rename from Regular-Expressions/20.Match-All-Numbers_script.js
rename to JavaScript Algorithms and Data Structures/03-Regular-Expressions/20.Match-All-Numbers_script.js
diff --git a/Regular-Expressions/21.Match-All-Non-Numbers_script.js b/JavaScript Algorithms and Data Structures/03-Regular-Expressions/21.Match-All-Non-Numbers_script.js
similarity index 100%
rename from Regular-Expressions/21.Match-All-Non-Numbers_script.js
rename to JavaScript Algorithms and Data Structures/03-Regular-Expressions/21.Match-All-Non-Numbers_script.js
diff --git a/Regular-Expressions/22.Restrict-Possible-Usernames_script.js b/JavaScript Algorithms and Data Structures/03-Regular-Expressions/22.Restrict-Possible-Usernames_script.js
similarity index 100%
rename from Regular-Expressions/22.Restrict-Possible-Usernames_script.js
rename to JavaScript Algorithms and Data Structures/03-Regular-Expressions/22.Restrict-Possible-Usernames_script.js
diff --git a/Regular-Expressions/23.Match-Whitespace_script.js b/JavaScript Algorithms and Data Structures/03-Regular-Expressions/23.Match-Whitespace_script.js
similarity index 100%
rename from Regular-Expressions/23.Match-Whitespace_script.js
rename to JavaScript Algorithms and Data Structures/03-Regular-Expressions/23.Match-Whitespace_script.js
diff --git a/Regular-Expressions/24.Match-Non-Whitespace-Characters_script.js b/JavaScript Algorithms and Data Structures/03-Regular-Expressions/24.Match-Non-Whitespace-Characters_script.js
similarity index 100%
rename from Regular-Expressions/24.Match-Non-Whitespace-Characters_script.js
rename to JavaScript Algorithms and Data Structures/03-Regular-Expressions/24.Match-Non-Whitespace-Characters_script.js
diff --git a/Regular-Expressions/25.Specify Upper-and-Lower-Number-of-Matches_script.js b/JavaScript Algorithms and Data Structures/03-Regular-Expressions/25.Specify Upper-and-Lower-Number-of-Matches_script.js
similarity index 100%
rename from Regular-Expressions/25.Specify Upper-and-Lower-Number-of-Matches_script.js
rename to JavaScript Algorithms and Data Structures/03-Regular-Expressions/25.Specify Upper-and-Lower-Number-of-Matches_script.js
diff --git a/Regular-Expressions/26.Specify-Only-the-Lower-Number-of-Matches_script.js b/JavaScript Algorithms and Data Structures/03-Regular-Expressions/26.Specify-Only-the-Lower-Number-of-Matches_script.js
similarity index 100%
rename from Regular-Expressions/26.Specify-Only-the-Lower-Number-of-Matches_script.js
rename to JavaScript Algorithms and Data Structures/03-Regular-Expressions/26.Specify-Only-the-Lower-Number-of-Matches_script.js
diff --git a/Regular-Expressions/27.Specify-Exact-Number-of-Matches_script.js b/JavaScript Algorithms and Data Structures/03-Regular-Expressions/27.Specify-Exact-Number-of-Matches_script.js
similarity index 100%
rename from Regular-Expressions/27.Specify-Exact-Number-of-Matches_script.js
rename to JavaScript Algorithms and Data Structures/03-Regular-Expressions/27.Specify-Exact-Number-of-Matches_script.js
diff --git a/Regular-Expressions/28.Check-for-All-or-None_script.js b/JavaScript Algorithms and Data Structures/03-Regular-Expressions/28.Check-for-All-or-None_script.js
similarity index 100%
rename from Regular-Expressions/28.Check-for-All-or-None_script.js
rename to JavaScript Algorithms and Data Structures/03-Regular-Expressions/28.Check-for-All-or-None_script.js
diff --git a/Regular-Expressions/29.Positive-and-Negative-Lookahead_script.js b/JavaScript Algorithms and Data Structures/03-Regular-Expressions/29.Positive-and-Negative-Lookahead_script.js
similarity index 100%
rename from Regular-Expressions/29.Positive-and-Negative-Lookahead_script.js
rename to JavaScript Algorithms and Data Structures/03-Regular-Expressions/29.Positive-and-Negative-Lookahead_script.js
diff --git a/Regular-Expressions/30.Check-For-Mixed-Grouping-of-Characters_script.js b/JavaScript Algorithms and Data Structures/03-Regular-Expressions/30.Check-For-Mixed-Grouping-of-Characters_script.js
similarity index 100%
rename from Regular-Expressions/30.Check-For-Mixed-Grouping-of-Characters_script.js
rename to JavaScript Algorithms and Data Structures/03-Regular-Expressions/30.Check-For-Mixed-Grouping-of-Characters_script.js
diff --git a/Regular-Expressions/31.Reuse-Patterns-Using-Capture-Groups_script.js b/JavaScript Algorithms and Data Structures/03-Regular-Expressions/31.Reuse-Patterns-Using-Capture-Groups_script.js
similarity index 100%
rename from Regular-Expressions/31.Reuse-Patterns-Using-Capture-Groups_script.js
rename to JavaScript Algorithms and Data Structures/03-Regular-Expressions/31.Reuse-Patterns-Using-Capture-Groups_script.js
diff --git a/Regular-Expressions/32.Use-Capture-Groups-to-Search-and-Replace_script.js b/JavaScript Algorithms and Data Structures/03-Regular-Expressions/32.Use-Capture-Groups-to-Search-and-Replace_script.js
similarity index 100%
rename from Regular-Expressions/32.Use-Capture-Groups-to-Search-and-Replace_script.js
rename to JavaScript Algorithms and Data Structures/03-Regular-Expressions/32.Use-Capture-Groups-to-Search-and-Replace_script.js
diff --git a/Regular-Expressions/33.Remove-Whitespace-from-Start-and-End_script.js b/JavaScript Algorithms and Data Structures/03-Regular-Expressions/33.Remove-Whitespace-from-Start-and-End_script.js
similarity index 100%
rename from Regular-Expressions/33.Remove-Whitespace-from-Start-and-End_script.js
rename to JavaScript Algorithms and Data Structures/03-Regular-Expressions/33.Remove-Whitespace-from-Start-and-End_script.js
diff --git a/Regular-Expressions/Match Everything-But-Letters-and-Numbers_script.js b/JavaScript Algorithms and Data Structures/03-Regular-Expressions/Match Everything-But-Letters-and-Numbers_script.js
similarity index 100%
rename from Regular-Expressions/Match Everything-But-Letters-and-Numbers_script.js
rename to JavaScript Algorithms and Data Structures/03-Regular-Expressions/Match Everything-But-Letters-and-Numbers_script.js
diff --git a/Debugging/01.Use-the-JavaScript-Console-to-Check-the-Value-of-a-Variable_script.js b/JavaScript Algorithms and Data Structures/04-Debugging/01.Use-the-JavaScript-Console-to-Check-the-Value-of-a-Variable_script.js
similarity index 100%
rename from Debugging/01.Use-the-JavaScript-Console-to-Check-the-Value-of-a-Variable_script.js
rename to JavaScript Algorithms and Data Structures/04-Debugging/01.Use-the-JavaScript-Console-to-Check-the-Value-of-a-Variable_script.js
diff --git a/Debugging/02.Understanding-the-Differences-between-the-freeCodeCamp-and-Browser-Console_script.js b/JavaScript Algorithms and Data Structures/04-Debugging/02.Understanding-the-Differences-between-the-freeCodeCamp-and-Browser-Console_script.js
similarity index 100%
rename from Debugging/02.Understanding-the-Differences-between-the-freeCodeCamp-and-Browser-Console_script.js
rename to JavaScript Algorithms and Data Structures/04-Debugging/02.Understanding-the-Differences-between-the-freeCodeCamp-and-Browser-Console_script.js
diff --git a/Debugging/03.Use-typeof-to-Check-the-Type-of-a-Variable_script.js b/JavaScript Algorithms and Data Structures/04-Debugging/03.Use-typeof-to-Check-the-Type-of-a-Variable_script.js
similarity index 100%
rename from Debugging/03.Use-typeof-to-Check-the-Type-of-a-Variable_script.js
rename to JavaScript Algorithms and Data Structures/04-Debugging/03.Use-typeof-to-Check-the-Type-of-a-Variable_script.js
diff --git a/Debugging/04.Catch-Misspelled-Variable-and-Function-Names_script.js b/JavaScript Algorithms and Data Structures/04-Debugging/04.Catch-Misspelled-Variable-and-Function-Names_script.js
similarity index 100%
rename from Debugging/04.Catch-Misspelled-Variable-and-Function-Names_script.js
rename to JavaScript Algorithms and Data Structures/04-Debugging/04.Catch-Misspelled-Variable-and-Function-Names_script.js
diff --git a/Debugging/05.Catch-Unclosed-Parentheses-Brackets-Braces-and-Quotes_script.js b/JavaScript Algorithms and Data Structures/04-Debugging/05.Catch-Unclosed-Parentheses-Brackets-Braces-and-Quotes_script.js
similarity index 100%
rename from Debugging/05.Catch-Unclosed-Parentheses-Brackets-Braces-and-Quotes_script.js
rename to JavaScript Algorithms and Data Structures/04-Debugging/05.Catch-Unclosed-Parentheses-Brackets-Braces-and-Quotes_script.js
diff --git a/Debugging/06.Catch-Mixed-Usage-of-Single-and-Double-Quotes_script.js b/JavaScript Algorithms and Data Structures/04-Debugging/06.Catch-Mixed-Usage-of-Single-and-Double-Quotes_script.js
similarity index 100%
rename from Debugging/06.Catch-Mixed-Usage-of-Single-and-Double-Quotes_script.js
rename to JavaScript Algorithms and Data Structures/04-Debugging/06.Catch-Mixed-Usage-of-Single-and-Double-Quotes_script.js
diff --git a/Debugging/07.Catch-Use-of-Assignment-Operator-Instead-of-Equality-Operator_script.js b/JavaScript Algorithms and Data Structures/04-Debugging/07.Catch-Use-of-Assignment-Operator-Instead-of-Equality-Operator_script.js
similarity index 100%
rename from Debugging/07.Catch-Use-of-Assignment-Operator-Instead-of-Equality-Operator_script.js
rename to JavaScript Algorithms and Data Structures/04-Debugging/07.Catch-Use-of-Assignment-Operator-Instead-of-Equality-Operator_script.js
diff --git a/Debugging/08.Catch-Missing-Open-and-Closing-Parenthesis-After-a-Function-Call_script.js b/JavaScript Algorithms and Data Structures/04-Debugging/08.Catch-Missing-Open-and-Closing-Parenthesis-After-a-Function-Call_script.js
similarity index 100%
rename from Debugging/08.Catch-Missing-Open-and-Closing-Parenthesis-After-a-Function-Call_script.js
rename to JavaScript Algorithms and Data Structures/04-Debugging/08.Catch-Missing-Open-and-Closing-Parenthesis-After-a-Function-Call_script.js
diff --git a/Debugging/09.Catch-Arguments-Passed-in-the-Wrong-Order-When-Calling-a-Function_script.js b/JavaScript Algorithms and Data Structures/04-Debugging/09.Catch-Arguments-Passed-in-the-Wrong-Order-When-Calling-a-Function_script.js
similarity index 100%
rename from Debugging/09.Catch-Arguments-Passed-in-the-Wrong-Order-When-Calling-a-Function_script.js
rename to JavaScript Algorithms and Data Structures/04-Debugging/09.Catch-Arguments-Passed-in-the-Wrong-Order-When-Calling-a-Function_script.js
diff --git a/Debugging/10.Catch-Off-By-One-Errors-When-Using-Indexing_script.js b/JavaScript Algorithms and Data Structures/04-Debugging/10.Catch-Off-By-One-Errors-When-Using-Indexing_script.js
similarity index 100%
rename from Debugging/10.Catch-Off-By-One-Errors-When-Using-Indexing_script.js
rename to JavaScript Algorithms and Data Structures/04-Debugging/10.Catch-Off-By-One-Errors-When-Using-Indexing_script.js
diff --git a/Debugging/11.Use-Caution-When-Reinitializing-Variables-Inside-a-Loop_script.js b/JavaScript Algorithms and Data Structures/04-Debugging/11.Use-Caution-When-Reinitializing-Variables-Inside-a-Loop_script.js
similarity index 100%
rename from Debugging/11.Use-Caution-When-Reinitializing-Variables-Inside-a-Loop_script.js
rename to JavaScript Algorithms and Data Structures/04-Debugging/11.Use-Caution-When-Reinitializing-Variables-Inside-a-Loop_script.js
diff --git a/Debugging/12.Prevent-Infinite-Loops-with-a-Valid-Terminal-Condition_script.js b/JavaScript Algorithms and Data Structures/04-Debugging/12.Prevent-Infinite-Loops-with-a-Valid-Terminal-Condition_script.js
similarity index 100%
rename from Debugging/12.Prevent-Infinite-Loops-with-a-Valid-Terminal-Condition_script.js
rename to JavaScript Algorithms and Data Structures/04-Debugging/12.Prevent-Infinite-Loops-with-a-Valid-Terminal-Condition_script.js
diff --git a/Basic-Data-Structures/01.Use-an-Array-to-Store-a-Collection-of-Data_script.js b/JavaScript Algorithms and Data Structures/05-Basic-Data-Structures/01.Use-an-Array-to-Store-a-Collection-of-Data_script.js
similarity index 100%
rename from Basic-Data-Structures/01.Use-an-Array-to-Store-a-Collection-of-Data_script.js
rename to JavaScript Algorithms and Data Structures/05-Basic-Data-Structures/01.Use-an-Array-to-Store-a-Collection-of-Data_script.js
diff --git a/Basic-Data-Structures/02.Access-an-Array-s-Using-Bracket-Notation_script.js b/JavaScript Algorithms and Data Structures/05-Basic-Data-Structures/02.Access-an-Array-s-Using-Bracket-Notation_script.js
similarity index 100%
rename from Basic-Data-Structures/02.Access-an-Array-s-Using-Bracket-Notation_script.js
rename to JavaScript Algorithms and Data Structures/05-Basic-Data-Structures/02.Access-an-Array-s-Using-Bracket-Notation_script.js
diff --git a/Basic-Data-Structures/03.Add-Items-to-an-Array-with-push()-and-unshift()_script.js b/JavaScript Algorithms and Data Structures/05-Basic-Data-Structures/03.Add-Items-to-an-Array-with-push()-and-unshift()_script.js
similarity index 100%
rename from Basic-Data-Structures/03.Add-Items-to-an-Array-with-push()-and-unshift()_script.js
rename to JavaScript Algorithms and Data Structures/05-Basic-Data-Structures/03.Add-Items-to-an-Array-with-push()-and-unshift()_script.js
diff --git a/Basic-Data-Structures/04.Remove-Items-from-an-Array-with-pop()-and-shift()_script.js b/JavaScript Algorithms and Data Structures/05-Basic-Data-Structures/04.Remove-Items-from-an-Array-with-pop()-and-shift()_script.js
similarity index 100%
rename from Basic-Data-Structures/04.Remove-Items-from-an-Array-with-pop()-and-shift()_script.js
rename to JavaScript Algorithms and Data Structures/05-Basic-Data-Structures/04.Remove-Items-from-an-Array-with-pop()-and-shift()_script.js
diff --git a/Basic-Data-Structures/05.Remove-Items-Using-splice()_script.js b/JavaScript Algorithms and Data Structures/05-Basic-Data-Structures/05.Remove-Items-Using-splice()_script.js
similarity index 100%
rename from Basic-Data-Structures/05.Remove-Items-Using-splice()_script.js
rename to JavaScript Algorithms and Data Structures/05-Basic-Data-Structures/05.Remove-Items-Using-splice()_script.js
diff --git a/Basic-Data-Structures/06.Add-Items-Using-splice()_script.js b/JavaScript Algorithms and Data Structures/05-Basic-Data-Structures/06.Add-Items-Using-splice()_script.js
similarity index 100%
rename from Basic-Data-Structures/06.Add-Items-Using-splice()_script.js
rename to JavaScript Algorithms and Data Structures/05-Basic-Data-Structures/06.Add-Items-Using-splice()_script.js
diff --git a/Basic-Data-Structures/07.Copy-Array-Items-Using-slice()_script.js b/JavaScript Algorithms and Data Structures/05-Basic-Data-Structures/07.Copy-Array-Items-Using-slice()_script.js
similarity index 100%
rename from Basic-Data-Structures/07.Copy-Array-Items-Using-slice()_script.js
rename to JavaScript Algorithms and Data Structures/05-Basic-Data-Structures/07.Copy-Array-Items-Using-slice()_script.js
diff --git a/Basic-Data-Structures/08.Copy-an-Array-with-the-Spread-Operator_script.js b/JavaScript Algorithms and Data Structures/05-Basic-Data-Structures/08.Copy-an-Array-with-the-Spread-Operator_script.js
similarity index 100%
rename from Basic-Data-Structures/08.Copy-an-Array-with-the-Spread-Operator_script.js
rename to JavaScript Algorithms and Data Structures/05-Basic-Data-Structures/08.Copy-an-Array-with-the-Spread-Operator_script.js
diff --git a/Basic-Data-Structures/09.Combine-Arrays-with-the-Spread-Operator_script.js b/JavaScript Algorithms and Data Structures/05-Basic-Data-Structures/09.Combine-Arrays-with-the-Spread-Operator_script.js
similarity index 100%
rename from Basic-Data-Structures/09.Combine-Arrays-with-the-Spread-Operator_script.js
rename to JavaScript Algorithms and Data Structures/05-Basic-Data-Structures/09.Combine-Arrays-with-the-Spread-Operator_script.js
diff --git a/Basic-Data-Structures/10.Check-For-The-Presence-of-an-Element-With-indexOf()_script.js b/JavaScript Algorithms and Data Structures/05-Basic-Data-Structures/10.Check-For-The-Presence-of-an-Element-With-indexOf()_script.js
similarity index 100%
rename from Basic-Data-Structures/10.Check-For-The-Presence-of-an-Element-With-indexOf()_script.js
rename to JavaScript Algorithms and Data Structures/05-Basic-Data-Structures/10.Check-For-The-Presence-of-an-Element-With-indexOf()_script.js
diff --git a/Basic-Data-Structures/11.Iterate-Through-All-an-Array's-Items-Using-For-Loops_script.js b/JavaScript Algorithms and Data Structures/05-Basic-Data-Structures/11.Iterate-Through-All-an-Array's-Items-Using-For-Loops_script.js
similarity index 100%
rename from Basic-Data-Structures/11.Iterate-Through-All-an-Array's-Items-Using-For-Loops_script.js
rename to JavaScript Algorithms and Data Structures/05-Basic-Data-Structures/11.Iterate-Through-All-an-Array's-Items-Using-For-Loops_script.js
diff --git a/Basic-Data-Structures/12.Create-complex-multi-dimensional-arrays_script.js b/JavaScript Algorithms and Data Structures/05-Basic-Data-Structures/12.Create-complex-multi-dimensional-arrays_script.js
similarity index 100%
rename from Basic-Data-Structures/12.Create-complex-multi-dimensional-arrays_script.js
rename to JavaScript Algorithms and Data Structures/05-Basic-Data-Structures/12.Create-complex-multi-dimensional-arrays_script.js
diff --git a/Basic-Data-Structures/13.Add-Key-Value-Pairs-to-JavaScript-Objects_script.js b/JavaScript Algorithms and Data Structures/05-Basic-Data-Structures/13.Add-Key-Value-Pairs-to-JavaScript-Objects_script.js
similarity index 100%
rename from Basic-Data-Structures/13.Add-Key-Value-Pairs-to-JavaScript-Objects_script.js
rename to JavaScript Algorithms and Data Structures/05-Basic-Data-Structures/13.Add-Key-Value-Pairs-to-JavaScript-Objects_script.js
diff --git a/Basic-Data-Structures/14.Modify-an-Object-Nested-Within-an-Object_script.js b/JavaScript Algorithms and Data Structures/05-Basic-Data-Structures/14.Modify-an-Object-Nested-Within-an-Object_script.js
similarity index 100%
rename from Basic-Data-Structures/14.Modify-an-Object-Nested-Within-an-Object_script.js
rename to JavaScript Algorithms and Data Structures/05-Basic-Data-Structures/14.Modify-an-Object-Nested-Within-an-Object_script.js
diff --git a/Basic-Data-Structures/15.Access-Property-Names-with-Bracket-Notation_script.js b/JavaScript Algorithms and Data Structures/05-Basic-Data-Structures/15.Access-Property-Names-with-Bracket-Notation_script.js
similarity index 100%
rename from Basic-Data-Structures/15.Access-Property-Names-with-Bracket-Notation_script.js
rename to JavaScript Algorithms and Data Structures/05-Basic-Data-Structures/15.Access-Property-Names-with-Bracket-Notation_script.js
diff --git a/Basic-Data-Structures/16.Use-the-delete-Keyword-to-Remove-Object-Properties_script.js b/JavaScript Algorithms and Data Structures/05-Basic-Data-Structures/16.Use-the-delete-Keyword-to-Remove-Object-Properties_script.js
similarity index 100%
rename from Basic-Data-Structures/16.Use-the-delete-Keyword-to-Remove-Object-Properties_script.js
rename to JavaScript Algorithms and Data Structures/05-Basic-Data-Structures/16.Use-the-delete-Keyword-to-Remove-Object-Properties_script.js
diff --git a/Basic-Data-Structures/17.Check-if-an-Object-has-a-Property_script.js b/JavaScript Algorithms and Data Structures/05-Basic-Data-Structures/17.Check-if-an-Object-has-a-Property_script.js
similarity index 100%
rename from Basic-Data-Structures/17.Check-if-an-Object-has-a-Property_script.js
rename to JavaScript Algorithms and Data Structures/05-Basic-Data-Structures/17.Check-if-an-Object-has-a-Property_script.js
diff --git a/Basic-Data-Structures/18.Iterate-Through-the-Keys-of-an Object-with-a-for-in-Statement_script.js b/JavaScript Algorithms and Data Structures/05-Basic-Data-Structures/18.Iterate-Through-the-Keys-of-an Object-with-a-for-in-Statement_script.js
similarity index 100%
rename from Basic-Data-Structures/18.Iterate-Through-the-Keys-of-an Object-with-a-for-in-Statement_script.js
rename to JavaScript Algorithms and Data Structures/05-Basic-Data-Structures/18.Iterate-Through-the-Keys-of-an Object-with-a-for-in-Statement_script.js
diff --git a/Basic-Data-Structures/19.Generate-an-Array-of-All-Object-Keys-with-Object.keys()_script.js b/JavaScript Algorithms and Data Structures/05-Basic-Data-Structures/19.Generate-an-Array-of-All-Object-Keys-with-Object.keys()_script.js
similarity index 100%
rename from Basic-Data-Structures/19.Generate-an-Array-of-All-Object-Keys-with-Object.keys()_script.js
rename to JavaScript Algorithms and Data Structures/05-Basic-Data-Structures/19.Generate-an-Array-of-All-Object-Keys-with-Object.keys()_script.js
diff --git a/Basic-Data-Structures/20.Modify-an-Array-Stored-in-an-Object_script.js b/JavaScript Algorithms and Data Structures/05-Basic-Data-Structures/20.Modify-an-Array-Stored-in-an-Object_script.js
similarity index 100%
rename from Basic-Data-Structures/20.Modify-an-Array-Stored-in-an-Object_script.js
rename to JavaScript Algorithms and Data Structures/05-Basic-Data-Structures/20.Modify-an-Array-Stored-in-an-Object_script.js
diff --git a/Basic-Algorithm-Scripting/01.Convert-Celsius-to-Fahrenheit_script.js b/JavaScript Algorithms and Data Structures/06-Basic-Algorithm-Scripting/01.Convert-Celsius-to-Fahrenheit_script.js
similarity index 100%
rename from Basic-Algorithm-Scripting/01.Convert-Celsius-to-Fahrenheit_script.js
rename to JavaScript Algorithms and Data Structures/06-Basic-Algorithm-Scripting/01.Convert-Celsius-to-Fahrenheit_script.js
diff --git a/Basic-Algorithm-Scripting/02.Reverse-a-String_script.js b/JavaScript Algorithms and Data Structures/06-Basic-Algorithm-Scripting/02.Reverse-a-String_script.js
similarity index 100%
rename from Basic-Algorithm-Scripting/02.Reverse-a-String_script.js
rename to JavaScript Algorithms and Data Structures/06-Basic-Algorithm-Scripting/02.Reverse-a-String_script.js
diff --git a/Basic-Algorithm-Scripting/03.Factorialize-a-Number_script.js b/JavaScript Algorithms and Data Structures/06-Basic-Algorithm-Scripting/03.Factorialize-a-Number_script.js
similarity index 100%
rename from Basic-Algorithm-Scripting/03.Factorialize-a-Number_script.js
rename to JavaScript Algorithms and Data Structures/06-Basic-Algorithm-Scripting/03.Factorialize-a-Number_script.js
diff --git a/Basic-Algorithm-Scripting/04.Find-the-Longest-Word-in-a-String_script.js b/JavaScript Algorithms and Data Structures/06-Basic-Algorithm-Scripting/04.Find-the-Longest-Word-in-a-String_script.js
similarity index 100%
rename from Basic-Algorithm-Scripting/04.Find-the-Longest-Word-in-a-String_script.js
rename to JavaScript Algorithms and Data Structures/06-Basic-Algorithm-Scripting/04.Find-the-Longest-Word-in-a-String_script.js
diff --git a/Basic-Algorithm-Scripting/05.Return-Largest-Numbers-in-Arrays_script.js b/JavaScript Algorithms and Data Structures/06-Basic-Algorithm-Scripting/05.Return-Largest-Numbers-in-Arrays_script.js
similarity index 100%
rename from Basic-Algorithm-Scripting/05.Return-Largest-Numbers-in-Arrays_script.js
rename to JavaScript Algorithms and Data Structures/06-Basic-Algorithm-Scripting/05.Return-Largest-Numbers-in-Arrays_script.js
diff --git a/Basic-Algorithm-Scripting/06.Confirm-the-Ending_script.js b/JavaScript Algorithms and Data Structures/06-Basic-Algorithm-Scripting/06.Confirm-the-Ending_script.js
similarity index 100%
rename from Basic-Algorithm-Scripting/06.Confirm-the-Ending_script.js
rename to JavaScript Algorithms and Data Structures/06-Basic-Algorithm-Scripting/06.Confirm-the-Ending_script.js
diff --git a/Basic-Algorithm-Scripting/07.Repeat-a-String-Repeat-a-String_script.js b/JavaScript Algorithms and Data Structures/06-Basic-Algorithm-Scripting/07.Repeat-a-String-Repeat-a-String_script.js
similarity index 100%
rename from Basic-Algorithm-Scripting/07.Repeat-a-String-Repeat-a-String_script.js
rename to JavaScript Algorithms and Data Structures/06-Basic-Algorithm-Scripting/07.Repeat-a-String-Repeat-a-String_script.js
diff --git a/Basic-Algorithm-Scripting/08.Truncate-a-String_script.js b/JavaScript Algorithms and Data Structures/06-Basic-Algorithm-Scripting/08.Truncate-a-String_script.js
similarity index 100%
rename from Basic-Algorithm-Scripting/08.Truncate-a-String_script.js
rename to JavaScript Algorithms and Data Structures/06-Basic-Algorithm-Scripting/08.Truncate-a-String_script.js
diff --git a/Basic-Algorithm-Scripting/09.Finders-Keepers_script.js b/JavaScript Algorithms and Data Structures/06-Basic-Algorithm-Scripting/09.Finders-Keepers_script.js
similarity index 100%
rename from Basic-Algorithm-Scripting/09.Finders-Keepers_script.js
rename to JavaScript Algorithms and Data Structures/06-Basic-Algorithm-Scripting/09.Finders-Keepers_script.js
diff --git a/Basic-Algorithm-Scripting/10.Boo-who_script.js b/JavaScript Algorithms and Data Structures/06-Basic-Algorithm-Scripting/10.Boo-who_script.js
similarity index 100%
rename from Basic-Algorithm-Scripting/10.Boo-who_script.js
rename to JavaScript Algorithms and Data Structures/06-Basic-Algorithm-Scripting/10.Boo-who_script.js
diff --git a/Basic-Algorithm-Scripting/11.Title-Case-a-Sentence_script.js b/JavaScript Algorithms and Data Structures/06-Basic-Algorithm-Scripting/11.Title-Case-a-Sentence_script.js
similarity index 100%
rename from Basic-Algorithm-Scripting/11.Title-Case-a-Sentence_script.js
rename to JavaScript Algorithms and Data Structures/06-Basic-Algorithm-Scripting/11.Title-Case-a-Sentence_script.js
diff --git a/Basic-Algorithm-Scripting/12.Slice-and-Splice_script.js b/JavaScript Algorithms and Data Structures/06-Basic-Algorithm-Scripting/12.Slice-and-Splice_script.js
similarity index 100%
rename from Basic-Algorithm-Scripting/12.Slice-and-Splice_script.js
rename to JavaScript Algorithms and Data Structures/06-Basic-Algorithm-Scripting/12.Slice-and-Splice_script.js
diff --git a/Basic-Algorithm-Scripting/13.Falsy-Bouncer_script.js b/JavaScript Algorithms and Data Structures/06-Basic-Algorithm-Scripting/13.Falsy-Bouncer_script.js
similarity index 100%
rename from Basic-Algorithm-Scripting/13.Falsy-Bouncer_script.js
rename to JavaScript Algorithms and Data Structures/06-Basic-Algorithm-Scripting/13.Falsy-Bouncer_script.js
diff --git a/Basic-Algorithm-Scripting/14.Where-do-I-Belong_script.js b/JavaScript Algorithms and Data Structures/06-Basic-Algorithm-Scripting/14.Where-do-I-Belong_script.js
similarity index 100%
rename from Basic-Algorithm-Scripting/14.Where-do-I-Belong_script.js
rename to JavaScript Algorithms and Data Structures/06-Basic-Algorithm-Scripting/14.Where-do-I-Belong_script.js
diff --git a/Basic-Algorithm-Scripting/15.Mutations_script.js b/JavaScript Algorithms and Data Structures/06-Basic-Algorithm-Scripting/15.Mutations_script.js
similarity index 100%
rename from Basic-Algorithm-Scripting/15.Mutations_script.js
rename to JavaScript Algorithms and Data Structures/06-Basic-Algorithm-Scripting/15.Mutations_script.js
diff --git a/Basic-Algorithm-Scripting/16.Chunky-Monkey_script.js b/JavaScript Algorithms and Data Structures/06-Basic-Algorithm-Scripting/16.Chunky-Monkey_script.js
similarity index 100%
rename from Basic-Algorithm-Scripting/16.Chunky-Monkey_script.js
rename to JavaScript Algorithms and Data Structures/06-Basic-Algorithm-Scripting/16.Chunky-Monkey_script.js
diff --git a/Object-Oriented-Programming/01.Create-a-Basic-JavaScript-Object_script.js b/JavaScript Algorithms and Data Structures/07-Object-Oriented-Programming/01.Create-a-Basic-JavaScript-Object_script.js
similarity index 100%
rename from Object-Oriented-Programming/01.Create-a-Basic-JavaScript-Object_script.js
rename to JavaScript Algorithms and Data Structures/07-Object-Oriented-Programming/01.Create-a-Basic-JavaScript-Object_script.js
diff --git a/Object-Oriented-Programming/02.Use-Dot-Notation-to-Access-the-Properties-of-an-Object_script.js b/JavaScript Algorithms and Data Structures/07-Object-Oriented-Programming/02.Use-Dot-Notation-to-Access-the-Properties-of-an-Object_script.js
similarity index 100%
rename from Object-Oriented-Programming/02.Use-Dot-Notation-to-Access-the-Properties-of-an-Object_script.js
rename to JavaScript Algorithms and Data Structures/07-Object-Oriented-Programming/02.Use-Dot-Notation-to-Access-the-Properties-of-an-Object_script.js
diff --git a/Object-Oriented-Programming/03.Create-a-Method-on-an-Object_script.js b/JavaScript Algorithms and Data Structures/07-Object-Oriented-Programming/03.Create-a-Method-on-an-Object_script.js
similarity index 100%
rename from Object-Oriented-Programming/03.Create-a-Method-on-an-Object_script.js
rename to JavaScript Algorithms and Data Structures/07-Object-Oriented-Programming/03.Create-a-Method-on-an-Object_script.js
diff --git a/Object-Oriented-Programming/04.Make-Code-More-Reusable-with-the-this-Keyword_script.js b/JavaScript Algorithms and Data Structures/07-Object-Oriented-Programming/04.Make-Code-More-Reusable-with-the-this-Keyword_script.js
similarity index 100%
rename from Object-Oriented-Programming/04.Make-Code-More-Reusable-with-the-this-Keyword_script.js
rename to JavaScript Algorithms and Data Structures/07-Object-Oriented-Programming/04.Make-Code-More-Reusable-with-the-this-Keyword_script.js
diff --git a/Object-Oriented-Programming/05.Define-a-Constructor-Function_script.js b/JavaScript Algorithms and Data Structures/07-Object-Oriented-Programming/05.Define-a-Constructor-Function_script.js
similarity index 100%
rename from Object-Oriented-Programming/05.Define-a-Constructor-Function_script.js
rename to JavaScript Algorithms and Data Structures/07-Object-Oriented-Programming/05.Define-a-Constructor-Function_script.js
diff --git a/Object-Oriented-Programming/06.Use-a-Constructor-to-Create-Objects_script.js b/JavaScript Algorithms and Data Structures/07-Object-Oriented-Programming/06.Use-a-Constructor-to-Create-Objects_script.js
similarity index 100%
rename from Object-Oriented-Programming/06.Use-a-Constructor-to-Create-Objects_script.js
rename to JavaScript Algorithms and Data Structures/07-Object-Oriented-Programming/06.Use-a-Constructor-to-Create-Objects_script.js
diff --git a/Object-Oriented-Programming/07.Extend-Constructors-to-Receive-Arguments_script.js b/JavaScript Algorithms and Data Structures/07-Object-Oriented-Programming/07.Extend-Constructors-to-Receive-Arguments_script.js
similarity index 100%
rename from Object-Oriented-Programming/07.Extend-Constructors-to-Receive-Arguments_script.js
rename to JavaScript Algorithms and Data Structures/07-Object-Oriented-Programming/07.Extend-Constructors-to-Receive-Arguments_script.js
diff --git a/Object-Oriented-Programming/08.Verify-an-Object's-Constructor-with-instanceof_script.js b/JavaScript Algorithms and Data Structures/07-Object-Oriented-Programming/08.Verify-an-Object's-Constructor-with-instanceof_script.js
similarity index 100%
rename from Object-Oriented-Programming/08.Verify-an-Object's-Constructor-with-instanceof_script.js
rename to JavaScript Algorithms and Data Structures/07-Object-Oriented-Programming/08.Verify-an-Object's-Constructor-with-instanceof_script.js
diff --git a/Object-Oriented-Programming/09.Understand-Own-Properties_script.js b/JavaScript Algorithms and Data Structures/07-Object-Oriented-Programming/09.Understand-Own-Properties_script.js
similarity index 100%
rename from Object-Oriented-Programming/09.Understand-Own-Properties_script.js
rename to JavaScript Algorithms and Data Structures/07-Object-Oriented-Programming/09.Understand-Own-Properties_script.js
diff --git a/Object-Oriented-Programming/10.Use-Prototype-Properties-to-Reduce-Duplicate-Code_script.js b/JavaScript Algorithms and Data Structures/07-Object-Oriented-Programming/10.Use-Prototype-Properties-to-Reduce-Duplicate-Code_script.js
similarity index 100%
rename from Object-Oriented-Programming/10.Use-Prototype-Properties-to-Reduce-Duplicate-Code_script.js
rename to JavaScript Algorithms and Data Structures/07-Object-Oriented-Programming/10.Use-Prototype-Properties-to-Reduce-Duplicate-Code_script.js
diff --git a/Object-Oriented-Programming/11.Iterate-Over-All-Properties_script.js b/JavaScript Algorithms and Data Structures/07-Object-Oriented-Programming/11.Iterate-Over-All-Properties_script.js
similarity index 100%
rename from Object-Oriented-Programming/11.Iterate-Over-All-Properties_script.js
rename to JavaScript Algorithms and Data Structures/07-Object-Oriented-Programming/11.Iterate-Over-All-Properties_script.js
diff --git a/Object-Oriented-Programming/12.Understand-the-Constructor-Property_script.js b/JavaScript Algorithms and Data Structures/07-Object-Oriented-Programming/12.Understand-the-Constructor-Property_script.js
similarity index 100%
rename from Object-Oriented-Programming/12.Understand-the-Constructor-Property_script.js
rename to JavaScript Algorithms and Data Structures/07-Object-Oriented-Programming/12.Understand-the-Constructor-Property_script.js
diff --git a/Object-Oriented-Programming/13.Change-the-Prototype-to-a-New-Object_script.js b/JavaScript Algorithms and Data Structures/07-Object-Oriented-Programming/13.Change-the-Prototype-to-a-New-Object_script.js
similarity index 100%
rename from Object-Oriented-Programming/13.Change-the-Prototype-to-a-New-Object_script.js
rename to JavaScript Algorithms and Data Structures/07-Object-Oriented-Programming/13.Change-the-Prototype-to-a-New-Object_script.js
diff --git a/Object-Oriented-Programming/14.Remember-to-Set-the-Constructor-Property-when-Changing-the-Prototype_script.js b/JavaScript Algorithms and Data Structures/07-Object-Oriented-Programming/14.Remember-to-Set-the-Constructor-Property-when-Changing-the-Prototype_script.js
similarity index 100%
rename from Object-Oriented-Programming/14.Remember-to-Set-the-Constructor-Property-when-Changing-the-Prototype_script.js
rename to JavaScript Algorithms and Data Structures/07-Object-Oriented-Programming/14.Remember-to-Set-the-Constructor-Property-when-Changing-the-Prototype_script.js
diff --git "a/Object-Oriented-Programming/15.Understand-Where-an-Object\342\200\231s-Prototype-Comes-From_script.js" "b/JavaScript Algorithms and Data Structures/07-Object-Oriented-Programming/15.Understand-Where-an-Object\342\200\231s-Prototype-Comes-From_script.js"
similarity index 100%
rename from "Object-Oriented-Programming/15.Understand-Where-an-Object\342\200\231s-Prototype-Comes-From_script.js"
rename to "JavaScript Algorithms and Data Structures/07-Object-Oriented-Programming/15.Understand-Where-an-Object\342\200\231s-Prototype-Comes-From_script.js"
diff --git a/Object-Oriented-Programming/16.Understand-the-Prototype-Chain_script.js b/JavaScript Algorithms and Data Structures/07-Object-Oriented-Programming/16.Understand-the-Prototype-Chain_script.js
similarity index 100%
rename from Object-Oriented-Programming/16.Understand-the-Prototype-Chain_script.js
rename to JavaScript Algorithms and Data Structures/07-Object-Oriented-Programming/16.Understand-the-Prototype-Chain_script.js
diff --git a/Object-Oriented-Programming/17.Use-Inheritance-So-You-Don't-Repeat-Yourself_script.js b/JavaScript Algorithms and Data Structures/07-Object-Oriented-Programming/17.Use-Inheritance-So-You-Don't-Repeat-Yourself_script.js
similarity index 100%
rename from Object-Oriented-Programming/17.Use-Inheritance-So-You-Don't-Repeat-Yourself_script.js
rename to JavaScript Algorithms and Data Structures/07-Object-Oriented-Programming/17.Use-Inheritance-So-You-Don't-Repeat-Yourself_script.js
diff --git a/Object-Oriented-Programming/18.Inherit-Behaviors-from-a-Supertype_script.js b/JavaScript Algorithms and Data Structures/07-Object-Oriented-Programming/18.Inherit-Behaviors-from-a-Supertype_script.js
similarity index 100%
rename from Object-Oriented-Programming/18.Inherit-Behaviors-from-a-Supertype_script.js
rename to JavaScript Algorithms and Data Structures/07-Object-Oriented-Programming/18.Inherit-Behaviors-from-a-Supertype_script.js
diff --git a/Object-Oriented-Programming/19.Set-the-Child's-Prototype-to-an-Instance-of-the-Parent_script.js b/JavaScript Algorithms and Data Structures/07-Object-Oriented-Programming/19.Set-the-Child's-Prototype-to-an-Instance-of-the-Parent_script.js
similarity index 100%
rename from Object-Oriented-Programming/19.Set-the-Child's-Prototype-to-an-Instance-of-the-Parent_script.js
rename to JavaScript Algorithms and Data Structures/07-Object-Oriented-Programming/19.Set-the-Child's-Prototype-to-an-Instance-of-the-Parent_script.js
diff --git a/Object-Oriented-Programming/20.Reset-an-Inherited-Constructor-Property_script.js b/JavaScript Algorithms and Data Structures/07-Object-Oriented-Programming/20.Reset-an-Inherited-Constructor-Property_script.js
similarity index 100%
rename from Object-Oriented-Programming/20.Reset-an-Inherited-Constructor-Property_script.js
rename to JavaScript Algorithms and Data Structures/07-Object-Oriented-Programming/20.Reset-an-Inherited-Constructor-Property_script.js
diff --git a/Object-Oriented-Programming/21.Add-Methods-After-Inheritance_script.js b/JavaScript Algorithms and Data Structures/07-Object-Oriented-Programming/21.Add-Methods-After-Inheritance_script.js
similarity index 100%
rename from Object-Oriented-Programming/21.Add-Methods-After-Inheritance_script.js
rename to JavaScript Algorithms and Data Structures/07-Object-Oriented-Programming/21.Add-Methods-After-Inheritance_script.js
diff --git a/Object-Oriented-Programming/22.Override-Inherited-Methods_script.js b/JavaScript Algorithms and Data Structures/07-Object-Oriented-Programming/22.Override-Inherited-Methods_script.js
similarity index 100%
rename from Object-Oriented-Programming/22.Override-Inherited-Methods_script.js
rename to JavaScript Algorithms and Data Structures/07-Object-Oriented-Programming/22.Override-Inherited-Methods_script.js
diff --git a/Object-Oriented-Programming/23.Use-a-Mixin-to-Add-Common-Behavior-Between-Unrelated-Objects_script.js b/JavaScript Algorithms and Data Structures/07-Object-Oriented-Programming/23.Use-a-Mixin-to-Add-Common-Behavior-Between-Unrelated-Objects_script.js
similarity index 100%
rename from Object-Oriented-Programming/23.Use-a-Mixin-to-Add-Common-Behavior-Between-Unrelated-Objects_script.js
rename to JavaScript Algorithms and Data Structures/07-Object-Oriented-Programming/23.Use-a-Mixin-to-Add-Common-Behavior-Between-Unrelated-Objects_script.js
diff --git a/Object-Oriented-Programming/24.Use-Closure-to-Protect-Properties-Within-an-Object-from-Being-Modified-Externally_script.js b/JavaScript Algorithms and Data Structures/07-Object-Oriented-Programming/24.Use-Closure-to-Protect-Properties-Within-an-Object-from-Being-Modified-Externally_script.js
similarity index 100%
rename from Object-Oriented-Programming/24.Use-Closure-to-Protect-Properties-Within-an-Object-from-Being-Modified-Externally_script.js
rename to JavaScript Algorithms and Data Structures/07-Object-Oriented-Programming/24.Use-Closure-to-Protect-Properties-Within-an-Object-from-Being-Modified-Externally_script.js
diff --git a/Object-Oriented-Programming/25.Understand-the-Immediately-Invoked-Function-Expression-(IIFE)_script.js b/JavaScript Algorithms and Data Structures/07-Object-Oriented-Programming/25.Understand-the-Immediately-Invoked-Function-Expression-(IIFE)_script.js
similarity index 100%
rename from Object-Oriented-Programming/25.Understand-the-Immediately-Invoked-Function-Expression-(IIFE)_script.js
rename to JavaScript Algorithms and Data Structures/07-Object-Oriented-Programming/25.Understand-the-Immediately-Invoked-Function-Expression-(IIFE)_script.js
diff --git a/Object-Oriented-Programming/26.Use-an-IIFE-to-Create-a-Module_script.js b/JavaScript Algorithms and Data Structures/07-Object-Oriented-Programming/26.Use-an-IIFE-to-Create-a-Module_script.js
similarity index 100%
rename from Object-Oriented-Programming/26.Use-an-IIFE-to-Create-a-Module_script.js
rename to JavaScript Algorithms and Data Structures/07-Object-Oriented-Programming/26.Use-an-IIFE-to-Create-a-Module_script.js
diff --git a/Functional-Programming/01.Learn-About-Functional-Programming.js b/JavaScript Algorithms and Data Structures/08-Functional-Programming/01.Learn-About-Functional-Programming.js
similarity index 100%
rename from Functional-Programming/01.Learn-About-Functional-Programming.js
rename to JavaScript Algorithms and Data Structures/08-Functional-Programming/01.Learn-About-Functional-Programming.js
diff --git a/Functional-Programming/02.Understand-Functional-Programming-Terminology.js b/JavaScript Algorithms and Data Structures/08-Functional-Programming/02.Understand-Functional-Programming-Terminology.js
similarity index 100%
rename from Functional-Programming/02.Understand-Functional-Programming-Terminology.js
rename to JavaScript Algorithms and Data Structures/08-Functional-Programming/02.Understand-Functional-Programming-Terminology.js
diff --git a/Functional-Programming/03.Understand-the-Hazards-of-Using-Imperative-Code.js b/JavaScript Algorithms and Data Structures/08-Functional-Programming/03.Understand-the-Hazards-of-Using-Imperative-Code.js
similarity index 100%
rename from Functional-Programming/03.Understand-the-Hazards-of-Using-Imperative-Code.js
rename to JavaScript Algorithms and Data Structures/08-Functional-Programming/03.Understand-the-Hazards-of-Using-Imperative-Code.js
diff --git a/Functional-Programming/04.Avoid-Mutations-and-Side-Effects-Using-Functional-Programming.js b/JavaScript Algorithms and Data Structures/08-Functional-Programming/04.Avoid-Mutations-and-Side-Effects-Using-Functional-Programming.js
similarity index 100%
rename from Functional-Programming/04.Avoid-Mutations-and-Side-Effects-Using-Functional-Programming.js
rename to JavaScript Algorithms and Data Structures/08-Functional-Programming/04.Avoid-Mutations-and-Side-Effects-Using-Functional-Programming.js
diff --git a/Functional-Programming/05.Pass-Arguments-to-Avoid-External-Dependence-in-a-Function.js b/JavaScript Algorithms and Data Structures/08-Functional-Programming/05.Pass-Arguments-to-Avoid-External-Dependence-in-a-Function.js
similarity index 100%
rename from Functional-Programming/05.Pass-Arguments-to-Avoid-External-Dependence-in-a-Function.js
rename to JavaScript Algorithms and Data Structures/08-Functional-Programming/05.Pass-Arguments-to-Avoid-External-Dependence-in-a-Function.js
diff --git a/Functional-Programming/06.Refactor-Global-Variables-Out-of-Functions.js b/JavaScript Algorithms and Data Structures/08-Functional-Programming/06.Refactor-Global-Variables-Out-of-Functions.js
similarity index 100%
rename from Functional-Programming/06.Refactor-Global-Variables-Out-of-Functions.js
rename to JavaScript Algorithms and Data Structures/08-Functional-Programming/06.Refactor-Global-Variables-Out-of-Functions.js
diff --git a/Functional-Programming/07.Use-the-map-Method-to-Extract-Data-from-an-Array.js b/JavaScript Algorithms and Data Structures/08-Functional-Programming/07.Use-the-map-Method-to-Extract-Data-from-an-Array.js
similarity index 100%
rename from Functional-Programming/07.Use-the-map-Method-to-Extract-Data-from-an-Array.js
rename to JavaScript Algorithms and Data Structures/08-Functional-Programming/07.Use-the-map-Method-to-Extract-Data-from-an-Array.js
diff --git a/Functional-Programming/08.Implement-map-on-a-Prototype.js b/JavaScript Algorithms and Data Structures/08-Functional-Programming/08.Implement-map-on-a-Prototype.js
similarity index 100%
rename from Functional-Programming/08.Implement-map-on-a-Prototype.js
rename to JavaScript Algorithms and Data Structures/08-Functional-Programming/08.Implement-map-on-a-Prototype.js
diff --git a/Functional-Programming/09.Use-the-filter-Method-to-Extract-Data-from-an-Array.js b/JavaScript Algorithms and Data Structures/08-Functional-Programming/09.Use-the-filter-Method-to-Extract-Data-from-an-Array.js
similarity index 100%
rename from Functional-Programming/09.Use-the-filter-Method-to-Extract-Data-from-an-Array.js
rename to JavaScript Algorithms and Data Structures/08-Functional-Programming/09.Use-the-filter-Method-to-Extract-Data-from-an-Array.js
diff --git a/Functional-Programming/10.Implement-the-filter-Method-on-a-Prototype.js b/JavaScript Algorithms and Data Structures/08-Functional-Programming/10.Implement-the-filter-Method-on-a-Prototype.js
similarity index 100%
rename from Functional-Programming/10.Implement-the-filter-Method-on-a-Prototype.js
rename to JavaScript Algorithms and Data Structures/08-Functional-Programming/10.Implement-the-filter-Method-on-a-Prototype.js
diff --git a/Functional-Programming/11.Return-Part-of-an-Array-Using-the-slice-Method.js b/JavaScript Algorithms and Data Structures/08-Functional-Programming/11.Return-Part-of-an-Array-Using-the-slice-Method.js
similarity index 100%
rename from Functional-Programming/11.Return-Part-of-an-Array-Using-the-slice-Method.js
rename to JavaScript Algorithms and Data Structures/08-Functional-Programming/11.Return-Part-of-an-Array-Using-the-slice-Method.js
diff --git a/Functional-Programming/12.Remove-Elements-from-an-Array-Using-slice-Instead-of-splice.js b/JavaScript Algorithms and Data Structures/08-Functional-Programming/12.Remove-Elements-from-an-Array-Using-slice-Instead-of-splice.js
similarity index 100%
rename from Functional-Programming/12.Remove-Elements-from-an-Array-Using-slice-Instead-of-splice.js
rename to JavaScript Algorithms and Data Structures/08-Functional-Programming/12.Remove-Elements-from-an-Array-Using-slice-Instead-of-splice.js
diff --git a/Functional-Programming/13.Combine-Two-Arrays-Using-the-concat-Method.js b/JavaScript Algorithms and Data Structures/08-Functional-Programming/13.Combine-Two-Arrays-Using-the-concat-Method.js
similarity index 100%
rename from Functional-Programming/13.Combine-Two-Arrays-Using-the-concat-Method.js
rename to JavaScript Algorithms and Data Structures/08-Functional-Programming/13.Combine-Two-Arrays-Using-the-concat-Method.js
diff --git a/Functional-Programming/14.Add-Elements-to-the-End-of-an-Array-Using-concat-Instead-of-push.js b/JavaScript Algorithms and Data Structures/08-Functional-Programming/14.Add-Elements-to-the-End-of-an-Array-Using-concat-Instead-of-push.js
similarity index 100%
rename from Functional-Programming/14.Add-Elements-to-the-End-of-an-Array-Using-concat-Instead-of-push.js
rename to JavaScript Algorithms and Data Structures/08-Functional-Programming/14.Add-Elements-to-the-End-of-an-Array-Using-concat-Instead-of-push.js
diff --git a/Functional-Programming/15.Use-the-reduce-Method-to-Analyze-Data.js b/JavaScript Algorithms and Data Structures/08-Functional-Programming/15.Use-the-reduce-Method-to-Analyze-Data.js
similarity index 100%
rename from Functional-Programming/15.Use-the-reduce-Method-to-Analyze-Data.js
rename to JavaScript Algorithms and Data Structures/08-Functional-Programming/15.Use-the-reduce-Method-to-Analyze-Data.js
diff --git a/Functional-Programming/16.Use-Higher-Order-Functions-map-filter-or-reduce-to-Solve-a-Complex-Problem.js b/JavaScript Algorithms and Data Structures/08-Functional-Programming/16.Use-Higher-Order-Functions-map-filter-or-reduce-to-Solve-a-Complex-Problem.js
similarity index 100%
rename from Functional-Programming/16.Use-Higher-Order-Functions-map-filter-or-reduce-to-Solve-a-Complex-Problem.js
rename to JavaScript Algorithms and Data Structures/08-Functional-Programming/16.Use-Higher-Order-Functions-map-filter-or-reduce-to-Solve-a-Complex-Problem.js
diff --git a/Functional-Programming/17.Sort-an-Array-Alphabetically-using-the-sort-Method.js b/JavaScript Algorithms and Data Structures/08-Functional-Programming/17.Sort-an-Array-Alphabetically-using-the-sort-Method.js
similarity index 100%
rename from Functional-Programming/17.Sort-an-Array-Alphabetically-using-the-sort-Method.js
rename to JavaScript Algorithms and Data Structures/08-Functional-Programming/17.Sort-an-Array-Alphabetically-using-the-sort-Method.js
diff --git a/Functional-Programming/18.Return-a-Sorted-Array-Without-Changing-the-Original-Array.js b/JavaScript Algorithms and Data Structures/08-Functional-Programming/18.Return-a-Sorted-Array-Without-Changing-the-Original-Array.js
similarity index 100%
rename from Functional-Programming/18.Return-a-Sorted-Array-Without-Changing-the-Original-Array.js
rename to JavaScript Algorithms and Data Structures/08-Functional-Programming/18.Return-a-Sorted-Array-Without-Changing-the-Original-Array.js
diff --git a/Functional-Programming/19.Split-a-String-into-an-Array-Using-the-split-Method.js b/JavaScript Algorithms and Data Structures/08-Functional-Programming/19.Split-a-String-into-an-Array-Using-the-split-Method.js
similarity index 100%
rename from Functional-Programming/19.Split-a-String-into-an-Array-Using-the-split-Method.js
rename to JavaScript Algorithms and Data Structures/08-Functional-Programming/19.Split-a-String-into-an-Array-Using-the-split-Method.js
diff --git a/Functional-Programming/20.Combine-an-Array-into-a-String-Using-the-join-Method.js b/JavaScript Algorithms and Data Structures/08-Functional-Programming/20.Combine-an-Array-into-a-String-Using-the-join-Method.js
similarity index 100%
rename from Functional-Programming/20.Combine-an-Array-into-a-String-Using-the-join-Method.js
rename to JavaScript Algorithms and Data Structures/08-Functional-Programming/20.Combine-an-Array-into-a-String-Using-the-join-Method.js
diff --git a/Functional-Programming/21.Apply-Functional-Programming-to-Convert-Strings-to-URL-Slugs.js b/JavaScript Algorithms and Data Structures/08-Functional-Programming/21.Apply-Functional-Programming-to-Convert-Strings-to-URL-Slugs.js
similarity index 100%
rename from Functional-Programming/21.Apply-Functional-Programming-to-Convert-Strings-to-URL-Slugs.js
rename to JavaScript Algorithms and Data Structures/08-Functional-Programming/21.Apply-Functional-Programming-to-Convert-Strings-to-URL-Slugs.js
diff --git a/Functional-Programming/22.Use-the-every-Method-to-Check-that-Every-Element-in-an-Array-Meets-a-Criteria.js b/JavaScript Algorithms and Data Structures/08-Functional-Programming/22.Use-the-every-Method-to-Check-that-Every-Element-in-an-Array-Meets-a-Criteria.js
similarity index 100%
rename from Functional-Programming/22.Use-the-every-Method-to-Check-that-Every-Element-in-an-Array-Meets-a-Criteria.js
rename to JavaScript Algorithms and Data Structures/08-Functional-Programming/22.Use-the-every-Method-to-Check-that-Every-Element-in-an-Array-Meets-a-Criteria.js
diff --git a/Functional-Programming/23.Use-the-some-Method-to-Check-that-Any-Elements-in-an-Array-Meet-a-Criteria.js b/JavaScript Algorithms and Data Structures/08-Functional-Programming/23.Use-the-some-Method-to-Check-that-Any-Elements-in-an-Array-Meet-a-Criteria.js
similarity index 100%
rename from Functional-Programming/23.Use-the-some-Method-to-Check-that-Any-Elements-in-an-Array-Meet-a-Criteria.js
rename to JavaScript Algorithms and Data Structures/08-Functional-Programming/23.Use-the-some-Method-to-Check-that-Any-Elements-in-an-Array-Meet-a-Criteria.js
diff --git a/Functional-Programming/24.Introduction-to-Currying-and-Partial-Application.js b/JavaScript Algorithms and Data Structures/08-Functional-Programming/24.Introduction-to-Currying-and-Partial-Application.js
similarity index 100%
rename from Functional-Programming/24.Introduction-to-Currying-and-Partial-Application.js
rename to JavaScript Algorithms and Data Structures/08-Functional-Programming/24.Introduction-to-Currying-and-Partial-Application.js
diff --git a/Intermediate-Algorithm-Scripting/01.Sum-All-Numbers-in-a-Range.js b/JavaScript Algorithms and Data Structures/09-Intermediate-Algorithm-Scripting/01.Sum-All-Numbers-in-a-Range.js
similarity index 100%
rename from Intermediate-Algorithm-Scripting/01.Sum-All-Numbers-in-a-Range.js
rename to JavaScript Algorithms and Data Structures/09-Intermediate-Algorithm-Scripting/01.Sum-All-Numbers-in-a-Range.js
diff --git a/Intermediate-Algorithm-Scripting/02.Diff-Two-Arrays.js b/JavaScript Algorithms and Data Structures/09-Intermediate-Algorithm-Scripting/02.Diff-Two-Arrays.js
similarity index 100%
rename from Intermediate-Algorithm-Scripting/02.Diff-Two-Arrays.js
rename to JavaScript Algorithms and Data Structures/09-Intermediate-Algorithm-Scripting/02.Diff-Two-Arrays.js
diff --git a/Intermediate-Algorithm-Scripting/03.Seek-and-Destroy.js b/JavaScript Algorithms and Data Structures/09-Intermediate-Algorithm-Scripting/03.Seek-and-Destroy.js
similarity index 100%
rename from Intermediate-Algorithm-Scripting/03.Seek-and-Destroy.js
rename to JavaScript Algorithms and Data Structures/09-Intermediate-Algorithm-Scripting/03.Seek-and-Destroy.js
diff --git a/Intermediate-Algorithm-Scripting/04.Where-art-thou.js b/JavaScript Algorithms and Data Structures/09-Intermediate-Algorithm-Scripting/04.Where-art-thou.js
similarity index 100%
rename from Intermediate-Algorithm-Scripting/04.Where-art-thou.js
rename to JavaScript Algorithms and Data Structures/09-Intermediate-Algorithm-Scripting/04.Where-art-thou.js
diff --git a/Intermediate-Algorithm-Scripting/05.Spinal-Tap-Case.js b/JavaScript Algorithms and Data Structures/09-Intermediate-Algorithm-Scripting/05.Spinal-Tap-Case.js
similarity index 100%
rename from Intermediate-Algorithm-Scripting/05.Spinal-Tap-Case.js
rename to JavaScript Algorithms and Data Structures/09-Intermediate-Algorithm-Scripting/05.Spinal-Tap-Case.js
diff --git a/Intermediate-Algorithm-Scripting/06.Pig-Latin.js b/JavaScript Algorithms and Data Structures/09-Intermediate-Algorithm-Scripting/06.Pig-Latin.js
similarity index 100%
rename from Intermediate-Algorithm-Scripting/06.Pig-Latin.js
rename to JavaScript Algorithms and Data Structures/09-Intermediate-Algorithm-Scripting/06.Pig-Latin.js
diff --git a/Intermediate-Algorithm-Scripting/07.Search-and-Replace.js b/JavaScript Algorithms and Data Structures/09-Intermediate-Algorithm-Scripting/07.Search-and-Replace.js
similarity index 100%
rename from Intermediate-Algorithm-Scripting/07.Search-and-Replace.js
rename to JavaScript Algorithms and Data Structures/09-Intermediate-Algorithm-Scripting/07.Search-and-Replace.js
diff --git a/Intermediate-Algorithm-Scripting/08.DNA-Pairing.js b/JavaScript Algorithms and Data Structures/09-Intermediate-Algorithm-Scripting/08.DNA-Pairing.js
similarity index 100%
rename from Intermediate-Algorithm-Scripting/08.DNA-Pairing.js
rename to JavaScript Algorithms and Data Structures/09-Intermediate-Algorithm-Scripting/08.DNA-Pairing.js
diff --git a/Intermediate-Algorithm-Scripting/09.Missing-letters.js b/JavaScript Algorithms and Data Structures/09-Intermediate-Algorithm-Scripting/09.Missing-letters.js
similarity index 100%
rename from Intermediate-Algorithm-Scripting/09.Missing-letters.js
rename to JavaScript Algorithms and Data Structures/09-Intermediate-Algorithm-Scripting/09.Missing-letters.js
diff --git a/Intermediate-Algorithm-Scripting/10.Sorted-Union.js b/JavaScript Algorithms and Data Structures/09-Intermediate-Algorithm-Scripting/10.Sorted-Union.js
similarity index 100%
rename from Intermediate-Algorithm-Scripting/10.Sorted-Union.js
rename to JavaScript Algorithms and Data Structures/09-Intermediate-Algorithm-Scripting/10.Sorted-Union.js
diff --git a/Intermediate-Algorithm-Scripting/11.Convert-HTML-Entities.js b/JavaScript Algorithms and Data Structures/09-Intermediate-Algorithm-Scripting/11.Convert-HTML-Entities.js
similarity index 100%
rename from Intermediate-Algorithm-Scripting/11.Convert-HTML-Entities.js
rename to JavaScript Algorithms and Data Structures/09-Intermediate-Algorithm-Scripting/11.Convert-HTML-Entities.js
diff --git a/Intermediate-Algorithm-Scripting/12.Sum-All-Odd-Fibonacci-Numbers.js b/JavaScript Algorithms and Data Structures/09-Intermediate-Algorithm-Scripting/12.Sum-All-Odd-Fibonacci-Numbers.js
similarity index 100%
rename from Intermediate-Algorithm-Scripting/12.Sum-All-Odd-Fibonacci-Numbers.js
rename to JavaScript Algorithms and Data Structures/09-Intermediate-Algorithm-Scripting/12.Sum-All-Odd-Fibonacci-Numbers.js
diff --git a/Intermediate-Algorithm-Scripting/13.Sum-All-Primes.js b/JavaScript Algorithms and Data Structures/09-Intermediate-Algorithm-Scripting/13.Sum-All-Primes.js
similarity index 100%
rename from Intermediate-Algorithm-Scripting/13.Sum-All-Primes.js
rename to JavaScript Algorithms and Data Structures/09-Intermediate-Algorithm-Scripting/13.Sum-All-Primes.js
diff --git a/Intermediate-Algorithm-Scripting/14.Smallest-Common-Multiple.js b/JavaScript Algorithms and Data Structures/09-Intermediate-Algorithm-Scripting/14.Smallest-Common-Multiple.js
similarity index 100%
rename from Intermediate-Algorithm-Scripting/14.Smallest-Common-Multiple.js
rename to JavaScript Algorithms and Data Structures/09-Intermediate-Algorithm-Scripting/14.Smallest-Common-Multiple.js
diff --git a/Intermediate-Algorithm-Scripting/15.Drop-it.js b/JavaScript Algorithms and Data Structures/09-Intermediate-Algorithm-Scripting/15.Drop-it.js
similarity index 100%
rename from Intermediate-Algorithm-Scripting/15.Drop-it.js
rename to JavaScript Algorithms and Data Structures/09-Intermediate-Algorithm-Scripting/15.Drop-it.js
diff --git a/Intermediate-Algorithm-Scripting/16.Steamroller.js b/JavaScript Algorithms and Data Structures/09-Intermediate-Algorithm-Scripting/16.Steamroller.js
similarity index 100%
rename from Intermediate-Algorithm-Scripting/16.Steamroller.js
rename to JavaScript Algorithms and Data Structures/09-Intermediate-Algorithm-Scripting/16.Steamroller.js
diff --git a/Intermediate-Algorithm-Scripting/17.Binary-Agents.js b/JavaScript Algorithms and Data Structures/09-Intermediate-Algorithm-Scripting/17.Binary-Agents.js
similarity index 100%
rename from Intermediate-Algorithm-Scripting/17.Binary-Agents.js
rename to JavaScript Algorithms and Data Structures/09-Intermediate-Algorithm-Scripting/17.Binary-Agents.js
diff --git a/Intermediate-Algorithm-Scripting/18.Everything-Be-True.js b/JavaScript Algorithms and Data Structures/09-Intermediate-Algorithm-Scripting/18.Everything-Be-True.js
similarity index 100%
rename from Intermediate-Algorithm-Scripting/18.Everything-Be-True.js
rename to JavaScript Algorithms and Data Structures/09-Intermediate-Algorithm-Scripting/18.Everything-Be-True.js
diff --git a/Intermediate-Algorithm-Scripting/19.Arguments-Optional.js b/JavaScript Algorithms and Data Structures/09-Intermediate-Algorithm-Scripting/19.Arguments-Optional.js
similarity index 100%
rename from Intermediate-Algorithm-Scripting/19.Arguments-Optional.js
rename to JavaScript Algorithms and Data Structures/09-Intermediate-Algorithm-Scripting/19.Arguments-Optional.js
diff --git a/Intermediate-Algorithm-Scripting/20.Make-a-Person.js b/JavaScript Algorithms and Data Structures/09-Intermediate-Algorithm-Scripting/20.Make-a-Person.js
similarity index 100%
rename from Intermediate-Algorithm-Scripting/20.Make-a-Person.js
rename to JavaScript Algorithms and Data Structures/09-Intermediate-Algorithm-Scripting/20.Make-a-Person.js
diff --git a/Intermediate-Algorithm-Scripting/21.Map-the-Debris.js b/JavaScript Algorithms and Data Structures/09-Intermediate-Algorithm-Scripting/21.Map-the-Debris.js
similarity index 100%
rename from Intermediate-Algorithm-Scripting/21.Map-the-Debris.js
rename to JavaScript Algorithms and Data Structures/09-Intermediate-Algorithm-Scripting/21.Map-the-Debris.js
diff --git a/JavaScript-Algorithms-and-Data-Structures-Projects/Caesars-Cipher.js b/JavaScript Algorithms and Data Structures/10-JavaScript-Algorithms-and-Data-Structures-Projects/Caesars-Cipher.js
similarity index 100%
rename from JavaScript-Algorithms-and-Data-Structures-Projects/Caesars-Cipher.js
rename to JavaScript Algorithms and Data Structures/10-JavaScript-Algorithms-and-Data-Structures-Projects/Caesars-Cipher.js
diff --git a/JavaScript-Algorithms-and-Data-Structures-Projects/Cash-Register.js b/JavaScript Algorithms and Data Structures/10-JavaScript-Algorithms-and-Data-Structures-Projects/Cash-Register.js
similarity index 100%
rename from JavaScript-Algorithms-and-Data-Structures-Projects/Cash-Register.js
rename to JavaScript Algorithms and Data Structures/10-JavaScript-Algorithms-and-Data-Structures-Projects/Cash-Register.js
diff --git a/JavaScript-Algorithms-and-Data-Structures-Projects/Palindrome-Checker.js b/JavaScript Algorithms and Data Structures/10-JavaScript-Algorithms-and-Data-Structures-Projects/Palindrome-Checker.js
similarity index 100%
rename from JavaScript-Algorithms-and-Data-Structures-Projects/Palindrome-Checker.js
rename to JavaScript Algorithms and Data Structures/10-JavaScript-Algorithms-and-Data-Structures-Projects/Palindrome-Checker.js
diff --git a/JavaScript-Algorithms-and-Data-Structures-Projects/Roman-Numeral-Converter.js b/JavaScript Algorithms and Data Structures/10-JavaScript-Algorithms-and-Data-Structures-Projects/Roman-Numeral-Converter.js
similarity index 100%
rename from JavaScript-Algorithms-and-Data-Structures-Projects/Roman-Numeral-Converter.js
rename to JavaScript Algorithms and Data Structures/10-JavaScript-Algorithms-and-Data-Structures-Projects/Roman-Numeral-Converter.js
diff --git a/JavaScript-Algorithms-and-Data-Structures-Projects/Telephone-Number-Validator.js b/JavaScript Algorithms and Data Structures/10-JavaScript-Algorithms-and-Data-Structures-Projects/Telephone-Number-Validator.js
similarity index 100%
rename from JavaScript-Algorithms-and-Data-Structures-Projects/Telephone-Number-Validator.js
rename to JavaScript Algorithms and Data Structures/10-JavaScript-Algorithms-and-Data-Structures-Projects/Telephone-Number-Validator.js
diff --git a/JavaScript Algorithms and Data Structures/README.md b/JavaScript Algorithms and Data Structures/README.md
new file mode 100644
index 0000000..5cbdcc1
--- /dev/null
+++ b/JavaScript Algorithms and Data Structures/README.md
@@ -0,0 +1,16 @@
+# FreeCodeCamp
+[](https://www.freecodecamp.org/)
+#### [JavaScript Algorithms and Data Structures Certification](https://www.freecodecamp.org/learn/javascript-algorithms-and-data-structures/)
+
+- [Basic JavaScript](https://www.freecodecamp.org/learn/javascript-algorithms-and-data-structures/#basic-javascript)
+- [ES6](https://www.freecodecamp.org/learn/javascript-algorithms-and-data-structures/#es6)
+- [Regular Expressions](https://www.freecodecamp.org/learn/javascript-algorithms-and-data-structures/#regular-expressions)
+- [Debugging](https://www.freecodecamp.org/learn/javascript-algorithms-and-data-structures/#debugging)
+- [Basic Data Structures](https://www.freecodecamp.org/learn/javascript-algorithms-and-data-structures/#basic-data-structures)
+- [Basic Algorithm Scripting](https://www.freecodecamp.org/learn/javascript-algorithms-and-data-structures/#basic-algorithm-scripting)
+- [Object-Oriented Programming](https://www.freecodecamp.org/learn/javascript-algorithms-and-data-structures/#object-oriented-programming)
+- [Functional Programming](https://www.freecodecamp.org/learn/javascript-algorithms-and-data-structures/#functional-programming)
+- [Intermediate Algorithm Scripting](https://www.freecodecamp.org/learn/javascript-algorithms-and-data-structures/#intermediate-algorithm-scripting)
+
+
+ **Projects**: [Palindrome Checker](https://www.freecodecamp.org/learn/javascript-algorithms-and-data-structures/javascript-algorithms-and-data-structures-projects/palindrome-checker),[ Roman Numeral Converter](https://www.freecodecamp.org/learn/javascript-algorithms-and-data-structures/javascript-algorithms-and-data-structures-projects/roman-numeral-converter), [Caesar's Cipher](https://www.freecodecamp.org/learn/javascript-algorithms-and-data-structures/javascript-algorithms-and-data-structures-projects/caesars-cipher), [Telephone Number Validator](https://www.freecodecamp.org/learn/javascript-algorithms-and-data-structures/javascript-algorithms-and-data-structures-projects/telephone-number-validator), [Cash Register](https://www.freecodecamp.org/learn/javascript-algorithms-and-data-structures/javascript-algorithms-and-data-structures-projects/cash-register)
diff --git a/JavaScript-todo-list/script.js b/JavaScript-todo-list/script.js
new file mode 100755
index 0000000..e08b357
--- /dev/null
+++ b/JavaScript-todo-list/script.js
@@ -0,0 +1,51 @@
+var myNodelist = document.getElementsByTagName("LI");
+var i;
+for (i = 0; i < myNodelist.length; i++) {
+ var span = document.createElement("SPAN");
+ var txt = document.createTextNode("\u00D7");
+ span.className = "close";
+ span.appendChild(txt);
+ myNodelist[i].appendChild(span);
+}
+
+var close = document.getElementsByClassName("close");
+var i;
+for (i = 0; i < close.length; i++) {
+ close[i].onclick = function() {
+ var div = this.parentElement;
+ div.style.display = "none";
+ }
+}
+
+var list = document.querySelector('ul');
+list.addEventListener('click', function(ev) {
+ if (ev.target.tagName === 'LI') {
+ ev.target.classList.toggle('checked');
+ }
+}, false);
+
+function newElement() {
+ var li = document.createElement("li");
+ var inputValue = document.getElementById("myInput").value;
+ var t = document.createTextNode(inputValue);
+ li.appendChild(t);
+ if (inputValue === '') {
+ alert("You must write something!");
+ } else {
+ document.getElementById("myUL").appendChild(li);
+ }
+ document.getElementById("myInput").value = "";
+
+ var span = document.createElement("SPAN");
+ var txt = document.createTextNode("\u00D7");
+ span.className = "close";
+ span.appendChild(txt);
+ li.appendChild(span);
+
+ for (i = 0; i < close.length; i++) {
+ close[i].onclick = function() {
+ var div = this.parentElement;
+ div.style.display = "none";
+ }
+ }
+}
diff --git a/JavaScript-todo-list/style.css b/JavaScript-todo-list/style.css
new file mode 100644
index 0000000..cc5c25e
--- /dev/null
+++ b/JavaScript-todo-list/style.css
@@ -0,0 +1,101 @@
+* {
+ box-sizing: border-box;
+}
+
+ul {
+ margin: 0;
+ padding: 0;
+}
+
+ul li {
+ cursor: pointer;
+ position: relative;
+ padding: 12px 8px 12px 40px;
+ background: #eee;
+ font-size: 18px;
+ transition: 0.2s;
+
+ -webkit-user-select: none;
+ -moz-user-select: none;
+ -ms-user-select: none;
+ user-select: none;
+}
+
+ul li:nth-child(odd) {
+ background: #f9f9f9;
+}
+
+ul li:hover {
+ background: #ddd;
+}
+
+ul li.checked {
+ background: #888;
+ color: #fff;
+ text-decoration: line-through;
+}
+
+ul li.checked::before {
+ content: '';
+ position: absolute;
+ border-color: #fff;
+ border-style: solid;
+ border-width: 0 2px 2px 0;
+ top: 10px;
+ left: 16px;
+ transform: rotate(45deg);
+ height: 15px;
+ width: 7px;
+ }
+
+ .close {
+ position: absolute;
+ right: 0;
+ top: 0;
+ padding: 12px 16px 12px 16px;
+ }
+
+ .close:hover {
+ background-color: #f44336;
+ color: white;
+ }
+
+ .header {
+ background-color: #ebae2a;
+ padding: 30px 40px;
+ color: white;
+ text-align: center;
+ }
+
+ .header:after {
+ content: "";
+ display: table;
+ clear: both;
+ }
+
+ input {
+ margin: 0;
+ border: none;
+ border-radius: 0;
+ width: 75%;
+ padding: 10px;
+ float: left;
+ font-size: 16px;
+ }
+
+ .addBtn {
+ padding: 9px;
+ width: 25%;
+ background: #d9d9d9;
+ color: #555;
+ float: left;
+ text-align: center;
+ font-size: 16px;
+ cursor: pointer;
+ transition: 0.3s;
+ border-radius: 0;
+ }
+
+ .addBtn:hover {
+ background-color: green;
+ }
\ No newline at end of file
diff --git a/JavaScript-todo-list/todo.html b/JavaScript-todo-list/todo.html
new file mode 100644
index 0000000..e03bbae
--- /dev/null
+++ b/JavaScript-todo-list/todo.html
@@ -0,0 +1,24 @@
+
+
+