i am working on angular 2 application, while i am trying to find the difference from 2 arrays(last seven days and missing date with in last seven days). whenever the array initialized through the string its working fine like example code 1. but while getting data from database it doesn't work.
var array1 = ['20180605', '20180606', '20180607', '20180608', '20180609', '20180610', '20180611']
var array2 = ['20180606', '20180607', '20180608']
var ind
for (var i = 0; i < array2.length; i++) {
ind = array1.indexOf(array2[i])
if (ind > -1) {
array1.splice(ind, 1)
}
}
console.log('diff', array1)
but this method is not working
let datas = [
{'dateString': '20180607'},
{'dateString': '20180606'},
{'dateString': '20180608'}
]
let originalDataArray = []
for (let data of datas) {
originalDataArray.push(data.dateString)
}
let dataArray = []
function formatDate (subtractDate) {
let datestring
datestring = moment().subtract(6 - subtractDate, 'days').format('YYYY' + 'MM' + 'DD')
dataArray.push(datestring)
}
let lastSevenDaysArray = []
for (let i = 0; i < 7; i++) {
let date = formatDate(i)
}
var array1 = originalDataArray
var array2 = dataArray
var ind
for (var i = 0; i < array2.length; i++) {
ind = array1.indexOf(array2[i])
if (ind > -1) {
array1.splice(ind, 1)
}
}
console.log('diff', array1)