diff --git "a/\350\256\276\350\256\241\346\250\241\345\274\217/\347\255\226\347\225\245\346\250\241\345\274\217.js" "b/\350\256\276\350\256\241\346\250\241\345\274\217/\347\255\226\347\225\245\346\250\241\345\274\217.js" new file mode 100644 index 0000000..750ad6f --- /dev/null +++ "b/\350\256\276\350\256\241\346\250\241\345\274\217/\347\255\226\347\225\245\346\250\241\345\274\217.js" @@ -0,0 +1,35 @@ +const strategy = { + S(salary) { + return salary * 4 + }, + A(salary) { + return salary * 3 + }, + B(salary) { + return salary * 2 + } +} + +const calculate = (leavl, salary) => { + return strategy[leavl](salary) +} + + + +const S = (salary) => { + return salary * 4 +} + +const A = (salary) => { + return salary * 3 +} + +const B = () => { + return salary * 2 +} + +const calculate2 = (func, salary) => { + return func(salary) +} + +console.log(calculate2(A, 10000)) \ No newline at end of file