Https://www.codecademy.com/courses/introduction-to-javascript/projects/workaround

[Unable to Solve this Exercise :sweat_smile: ]

let salary = 10000;

let Employee = {
salary: 10000
};
export let payGrades = {
entryLevel: { taxMultiplier: .05, benefits: [‘health’], minSalary: 10000, maxSalary: 49999 },
midLevel: { taxMultiplier: .1, benefits: [‘health’, ‘housing’], minSalary: 50000, maxSalary: 99999 },
seniorLevel: { taxMultiplier: .2, benefits: [‘health’, ‘housing’, ‘wellness’, ‘gym’], minSalary: 100000, maxSalary: 200000 }
};

export function getCadre() {
if (Employee.salary >= payGrades.entryLevel.minSalary && Employee.salary <= payGrades.entryLevel.maxSalary) {
return ‘entryLevel’;
} else if (Employee.salary >= payGrades.midLevel.minSalary && Employee.salary <= payGrades.midLevel.maxSalary) {
return ‘midLevel’;
} else return ‘seniorLevel’;
}

export function calculateTax() {
return payGrades[Employee.getCadre()].taxMultiplier * Employee.salary;
}

export function getBenefits() {
return payGrades[Employee.getCadre()].benefits.join(’, ');
}

export function calculateBonus() {
return .02 * Employee.salary;
}

export function reimbursementEligibility() {
let reimbursementCosts = { health: 5000, housing: 8000, wellness: 6000, gym: 12000 };
let totalBenefitsValue = 0;
let employeeBenefits = payGrades[Employee.getCadre()].benefits;
for (let i = 0; i < employeeBenefits.length; i++) {
totalBenefitsValue += reimbursementCosts[employeeBenefits[i]];
}
return totalBenefitsValue;
}

export default Employee;

// Importing file:

import {getcadre, calculateTax, getBenefits, calculateBonus, reimbursementEligibility } from ‘./employee’;
import Employee from ‘./employee’;

function getEmployeeInformation(inputSalary) {
Employee.salary = inputSalary;
console.log('Cadre: ’ + getCadre());
console.log('Tax: ’ + calculateTax());
console.log('Benefits: ’ + getBenefits());
console.log('Bonus: ’ + calculateBonus());
console.log('Reimbursement Eligibility: ’ + reimbursementEligibility() + ‘\n’);
}

getEmployeeInformation(10000);
getEmployeeInformation(50000);
getEmployeeInformation(100000);

Https://www.codecademy.com/courses/introduction-to-javascript/projects/workaround

here:

return payGrades[Employee.getCadre()].benefits.join(’, ');

you use a backtick and a apostrophe together for join, which does not go well. Deliberate or has it do with forum markup?

Also, what is the problem? What do you expect to happen? Why do you think its not happening?

1 Like