JSFiddle - React, Tailwind, and code Playground
by Ryan J
HTML
<script src="https://cdnjs.cloudflare.com/ajax/libs/axios/0.17.1/axios.js"></script>
<script src="https://momentjs.com/downloads/moment.min.js"></script>
JavaScript
var fundCode = 460
/* var selectedDate = '2015-11-30'; //1,3,5,10 PASS */
var selectedDate = '2003-11-30';
/* var selectedDate = '1987-12-31'; */
/* var selectedDate = '1988-01-31'; //1 year */
/* var selectedDate = '1989-12-31';//1 PASS */
/* var selectedDate = '1987-03-31'//0 PASS */
/* var selectedDate = '1997-03-31'; //1,3,5,10 PASS*/
/* var selectedDate = '1996-11-30'; //1,3,5,10 PASS */
/* var selectedDate = '1987-12-31'; */
/* var selectedDate = '2018-08-31' */
var arrHolder = [];
axios
.get(`https://content.rbcgam.com/funds/growth-of-10k?rbcFundCode=${fundCode}`)
.then(res => res.data)
.then(data => {
console.log(data.growthOf10K)
var growthOf10kArrSinceInception = [];
data.growthOf10K.map(fund => {
//Push anything before selected date and same to the list
if (moment(fund.key).isBefore(selectedDate) || moment(fund.key).isSame(selectedDate)) {
growthOf10kArrSinceInception.push(fund);
}
});
return growthOf10kArrSinceInception;
})
.then(growthOf10kArrSinceInception => {
console.log("growthOf10kArrSinceInception");
console.log(growthOf10kArrSinceInception);
/*Subtract one year from selected date and find object pointer*/
var selectedDateHolder = selectedDate;
selectedDateHolder = moment(selectedDateHolder);
var oneYearDateTemp = moment(selectedDateHolder.subtract(1, 'year').add(1, 'month')); //Get one year start date
/* console.log("oneYearDate: " + oneYearDate.format("YY/MM/DD")) */
var oneYearDate = moment(oneYearDateTemp).endOf('month');
var arrPointer = -1;
var oneYearArrHolder = [];
var threeYearArrHolder = [];
var fiveYearArrHolder = [];
var tenYearArrHolder = [];
var siYearArrHolder = [];
var masterSlicedObjHolder = null;
var oneYearValidFlag = false
growthOf10kArrSinceInception.map(fund => {
var currentDateHolder = moment(fund.key);
console.log("oneYearDate: " +...