-
WorkAroundJava Script 2020. 8. 19. 11:18
1-8
//employee.js let Employee = { salary: 100000 }; 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 } }; Employee.getCadre = function () { 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'; } Employee.calculateTax= function () { return payGrades[Employee.getCadre()].taxMultiplier * Employee.salary; } Employee.getBenefits= function () { return payGrades[Employee.getCadre()].benefits.join(', '); } Employee.calculateBonus= function() { return .02 * Employee.salary; } Employee.reimbursementEligibility=function () { 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 ;
//WorkAround.js import Employee from './employee'; function getEmployeeInformation(inputSalary) { Employee.salary = inputSalary; console.log('Cadre: ' + Employee.getCadre()); console.log('Tax: ' + Employee.calculateTax()); console.log('Benefits: ' + Employee.getBenefits()); console.log('Bonus: ' + Employee.calculateBonus()); console.log('Reimbursement Eligibility: ' + Employee.reimbursementEligibility() + '\n'); }
8-14
//employee.js let Employee = { salary: 100000 }; 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 } }; 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'; } function calculateTax() { return payGrades[getCadre()].taxMultiplier * Employee.salary; } function getBenefits() { return payGrades[getCadre()].benefits.join(', '); } function calculateBonus() { return .02 * Employee.salary; } function reimbursementEligibility() { let reimbursementCosts = { health: 5000, housing: 8000, wellness: 6000, gym: 12000 }; let totalBenefitsValue = 0; let employeeBenefits = payGrades[getCadre()].benefits; for (let i = 0; i < employeeBenefits.length; i++) { totalBenefitsValue += reimbursementCosts[employeeBenefits[i]]; } return totalBenefitsValue; } export { Employee, getCadre as cadre, calculateTax as tax, getBenefits as benefits, calculateBonus as bonus, reimbursementEligibility as reimbursement };
//workAround.js import { Employee, cadre, tax, benefits, bonus, reimbursement } from './employee'; function getEmployeeInformation(inputSalary) { Employee.salary = inputSalary; console.log('Cadre: ' + cadre()); console.log('Tax: ' + tax()); console.log('Benefits: ' + benefits()); console.log('Bonus: ' + bonus()); console.log('Reimbursement Eligibility: ' + reimbursement() + '\n'); } getEmployeeInformation(10000); getEmployeeInformation(50000); getEmployeeInformation(100000);
15-17
// employee.js let Employee = { salary: 100000 }; 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[getCadre()].taxMultiplier * Employee.salary; } export function getBenefits() { return payGrades[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[getCadre()].benefits; for (let i = 0; i < employeeBenefits.length; i++) { totalBenefitsValue += reimbursementCosts[employeeBenefits[i]]; } return totalBenefitsValue; } export default Employee;
//workAround.js 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);
'Java Script' 카테고리의 다른 글
ASYNC AWAIT (0) 2020.08.26 JAVASCRIPT PROMISES (0) 2020.08.24 Message Mixer (0) 2020.08.18 Modules (0) 2020.08.13 [Project] School Catalogue (0) 2020.08.12