shuangya
2022-11-27 03:02:38 +08:00
伪代码(假设公司给你报的月薪与你实际月薪一致)
var base = 月薪;
var rate = xx%; // 五险一金比例
var other = 0; // 每月其他扣除,如果有的话
function 获取金额对应的税率(money);
function 获取金额对应的速算扣除数(money);
function 计算某月个税(月份) {
// 如果公司给你报的月薪与你实际月薪不一致,那这里的 base * rate 需要改成 公司上报的月薪 * rate
var 总应纳税所得额 = (base - base * rate - other) * 月份;
var 总纳税 = 总应纳税所得额 * 获取金额对应的税率(总应纳税所得额) - 获取金额对应的速算扣除数(总应纳税所得额)
var 截止上月应纳税所得额 = (base - base * rate - other) * (月份 - 1);
var 截止上月总纳税 = 截止上月应纳税所得额 * 获取金额对应的税率(截止上月应纳税所得额) - 获取金额对应的速算扣除数(截止上月应纳税所得额);
return 总纳税 - 截止上月总纳税;
}
function 计算到手年薪(分别计税)(base, 年终奖) {
// 如果公司给你报的月薪与你实际月薪不一致,那这里的 base * rate 需要改成 公司上报的月薪 * rate
var 总应纳税所得额 = (base - base * rate - other) * 12;
var 总纳税 = 总应纳税所得额 * 获取金额对应的税率(总应纳税所得额) - 获取金额对应的速算扣除数(总应纳税所得额);
var 年终奖纳税 = 年终奖 * 获取金额对应的税率(年终奖) - 获取金额对应的速算扣除数(年终奖);
return 总纳税 + 年终奖纳税;
}
function 计算到手年薪(合并计税)(base, 年终奖) {
// 如果公司给你报的月薪与你实际月薪不一致,那这里的 base * rate 需要改成 公司上报的月薪 * rate
var 总应纳税所得额 = (base - base * rate - other) * 12 + 年终奖;
retutn 总应纳税所得额 * 获取金额对应的税率(总应纳税所得额) - 获取金额对应的速算扣除数(总应纳税所得额);
}