diff --git a/src/isolate-duplicates/index.js b/src/isolate-duplicates/index.js index 79ae426..5346548 100644 --- a/src/isolate-duplicates/index.js +++ b/src/isolate-duplicates/index.js @@ -1,3 +1,27 @@ -function isolateDuplicates(text) {} +// function isolateDuplicates(text) { +// let count = {} -module.exports = isolateDuplicates; +// text.forEach(isolate) + +// function isolate(item){ +// console.log(item) +// } + +// } + + +// console.log("aaaabbcdefffffffg") +// module.exports = isolateDuplicates; + + +//switch between two variables without using a third + +let x = 10 +let y = 20 + +x = x + y +y = x - y +x = x - y + +console.log(x) +console.log(y) \ No newline at end of file diff --git a/src/morse/index.js b/src/morse/index.js index cf65063..d22a6b5 100644 --- a/src/morse/index.js +++ b/src/morse/index.js @@ -58,6 +58,18 @@ const MORSE_CODE = { Object.freeze(MORSE_CODE); -function morse(text) {} +function morse(text) { +if (typeof text !== "string") throw new Error("Please provide a morse string"); + +if (text == "") return ""; +let word = ""; +let firstWord = ""; +text = text.trim(); + +if (text.includes(" ")) { + text = text.replace(/ /g, "[[]]"); + text = text + +} module.exports = morse; diff --git a/src/remove-dulplicates/index.js b/src/remove-dulplicates/index.js index 75c6c9b..ec14de4 100644 --- a/src/remove-dulplicates/index.js +++ b/src/remove-dulplicates/index.js @@ -1,3 +1,15 @@ -function removeDuplicates(obj) {} +function removeDuplicates(obj) { +let n = [] + +let rep = (a, b) => [...new Set([...a].filter( x => !b.includes(x)))]; + +return Object.entries(obj).reverse().map(element => { + const aux = n; + n = [...new Set([...n, ...element[1]])]; + + return [element[0],[...new Set(rep (element[1], aux))] ]; +}).reduce((arrays, array) => ((arrays[array[0]] = array[1]), arrays), {}); + + } module.exports = removeDuplicates;