Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function thePianist(arr) {
- let piecesNumber = arr.shift();
- let pieceName = '';
- let composer = '';
- let key = '';
- let pieces = {};
- for (let line = 0; line < piecesNumber; line++) {
- let pieceInfo = arr.shift().split('|');
- pieceName = pieceInfo[0];
- composer = pieceInfo[1];
- key = pieceInfo[2];
- pieces[pieceName] = { composer: composer, key: key };
- }
- for (let line of arr) {
- let tokens = line.split('|');
- let command = tokens[0];
- let pieceName = tokens[1];
- let composer = tokens[2];
- let key = tokens[3];
- if (command === "Add") {
- if (pieces.hasOwnProperty(pieceName)) {
- console.log(`${pieceName} is already in the collection!`);
- } else {
- pieces[pieceName] = { composer: composer, key: key }
- console.log(` ${pieceName} by ${composer} in ${key} added to the collection!`);
- }
- } else if (command === "Remove") {
- if (pieces.hasOwnProperty(pieceName)) {
- delete pieces[pieceName];
- console.log(`Successfully removed ${pieceName}!`);
- } else {
- console.log(`Invalid operation! ${pieceName} does not exist in the collection.`);
- }
- } else if (command === "ChangeKey") {
- if (pieces.hasOwnProperty(pieceName)) {
- let newKey = tokens[2];
- pieces[pieceName].key = newKey;
- console.log(`Changed the key of ${pieceName} to ${newKey}!`);
- } else {
- console.log(`Invalid operation! ${pieceName} does not exist in the collection.`);
- }
- } else if (command === "Stop") {
- for (let pieceName in pieces) {
- let composer = pieces[pieceName].composer;
- let key = pieces[pieceName].key;
- console.log(`${pieceName} -> Composer: ${composer}, Key: ${key}`);
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement