Advertisement
viligen

cars

Jun 6th, 2022
827
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. function solve(arr) {
  2.     let result = [];
  3.     const commands = {
  4.         create: createObj,
  5.         set: setProp,
  6.         print: print,
  7.     };
  8.     for (let data of arr) {
  9.         let [command, ...args] = data.split(" ");
  10.         commands[command](...args);
  11.     }
  12.  
  13.     function createObj(newName, inheritence, oldObjName) {
  14.         const newObj = inheritence
  15.             ? Object.create(result.filter((o) => o.name == oldObjName)[0])
  16.             : {};
  17.         newObj.name = newName;
  18.         result.push(newObj);
  19.     }
  20.  
  21.     function setProp(parName, key, value) {
  22.         result.filter((o) => o.name == parName)[0][key] = value;
  23.     }
  24.     function print(parName) {
  25.         let filtered = result.filter((o) => o.name == parName)[0];
  26.         output = [];
  27.         for (let key in filtered) {
  28.             if (key !== "name") {
  29.                 output.push(`${key}:${filtered[key]}`);
  30.             }
  31.         }
  32.         console.log(output.join(","));
  33.     }
  34. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement