$.each(date_range, function(kr, time) {
alert('time' + '=>' + time)
alert(data_d.indexOf(time) != -1);
if (time == timestamp) {
data_d.push([timestamp, v.kreditbetrag]);
} else {
data_d.push([time, 0]);
}
});
但是我看到每次都在第二次警告错误而我在date_range中有相同的时间也许是因为data_d数组在元素对时间和值中有。我怎么知道data_d数组中是否已存在时间?
obj = {0:[kreditbetrag:1300,datum:'2018-03-30'],1:[kreditbetrag:2600,datum:'2018-03-29']};
date_range=[1521763200000, 1521849600000, 1521936000000, 1522022400000, 1522108800000, 1522195200000, 1522281600000, 1522368000000]
data_d=[];
$.each( obj, function( key, value ) {
$.each(value, function(k, v) {
var timeStamp = function(str) {
return new Date(str.replace(/^(\d{2}\-)(\d{2}\-)(\d{4})$/,
'$2$1$3')).getTime();
};
timestamp = timeStamp(v.datum);
$.each(date_range, function(kr, time) {
alert(data_d.indexOf(time) != -1);
if (time == timestamp) {
data_d.push([timestamp, v.kreditbetrag]);
} else {
data_d.push([time, 0]);
}
});
});
});
console.log(data_d);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
答案 0 :(得分:0)
这是你想要达到的目标吗?如果没有,请在评论中写下你想要的不同,我会尝试改变它。
obj = {
0: {
kreditbetrag: 1300,
datum: '2018-03-30'
},
1: {
kreditbetrag: 2600,
datum: '2018-03-29'
}
};
date_range = [1521763200000, 1521849600000, 1521936000000, 1522022400000, 1522108800000, 1522195200000, 1522281600000, 1522368000000];
data_d = [];
var timeStamp = function(str) {
return new Date(str.replace(/^(\d{2}\-)(\d{2}\-)(\d{4})$/,
'$2$1$3')).getTime();
};
$.each(obj, function(key, value) {
timestamp = timeStamp(value.datum);
$.each(date_range, function(kr, time) {
if (time == timestamp) {
data_d.push([timestamp, value.kreditbetrag]);
} else {
data_d.push([time, 0]);
}
});
});
console.log(data_d);
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
&#13;