Advertisement
viligen

carFactory

May 27th, 2022
607
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. function myFunc(inputObj) {
  2.     const engines = {
  3.         90: { power: 90, volume: 1800 },
  4.         120: { power: 120, volume: 2400 },
  5.         200: { power: 200, volume: 3500 },
  6.     };
  7.  
  8.     const carriages = {
  9.         hatchback: { type: "hatchback", color: "" },
  10.         coupe: { type: "coupe", color: "" },
  11.     };
  12.  
  13.     const carObj = {
  14.         model: "",
  15.         engine: null,
  16.         carriage: null,
  17.         wheels: [],
  18.     };
  19.     carObj.model = inputObj.model;
  20.     const searched_power = Object.keys(engines).filter(
  21.         (e) => e >= inputObj.power
  22.     )[0];
  23.     carObj.engine = engines[searched_power];
  24.     carObj.carriage = carriages[inputObj.carriage];
  25.     carObj.carriage.color = inputObj.color;
  26.  
  27.     let wheel = inputObj.wheelsize;
  28.     if (wheel % 2 === 0) {
  29.         wheel = Math.floor(wheel) - 1;
  30.     }
  31.     carObj.wheels = Array(4).fill(wheel);
  32.  
  33.     return carObj;
  34. }
  35.  
  36. console.log(
  37.     myFunc({
  38.         model: "Opel Vectra",
  39.         power: 110,
  40.         color: "grey",
  41.         carriage: "coupe",
  42.         wheelsize: 17,
  43.     })
  44. );
  45.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement