JSFiddle - React, Tailwind, and code Playground

by Ketan Patel

JavaScript

function PMT (ir, np, pv, fv ) {
 	pmt = ( ir * ( pv * Math.pow ( (ir+1), np ) + fv ) ) / ( ( ir + 1 ) * ( Math.pow ( (ir+1), np) -1 ) );
 	return pmt;
}

var ir = 3.5 / 100;
var np = 30;
var pv = 269180;
var fv = 0;

var nvPMT = PMT(ir, np, pv, fv );

console.log(nvPMT);


function RPCFV(rate, nper, pmt, pv, type) {
  var pow = Math.pow(1 + rate, nper),
     	fv;
  if (rate) {
   	fv = (pmt*(1+rate*type)*(1-pow)/rate)-pv*pow;
  } else {
   	fv = -1 * (pv + pmt * nper);
  }
  return Math.abs(Math.round(fv.toFixed(2)));
}

var ir = 8 / 100;
var np = 30;
var pmt = 1000;
var pv = 10000;
var type = 0;

var nvFV = RPCFV(ir, np, pmt, pv, type);

console.log(nvFV);