Я пытаюсь получить «заголовок» вложенного массива, где была найдена совпадающая дата ... но безрезультатно.Как найти «название» многомерного массива, где значение было найдено?
Если дата найдена в массиве, она должна предупредить «ИСТИНА». Дата должна соответствовать или находиться в пределах диапазона дат. Когда он будет найден, я хотел бы получить «Заголовок» вложенного массива, где он был найден, чтобы соответствовать. (IE. Дата «10/29/2013» находится в соответствии с «Лицом 2». Я также хотел бы сказать это название.
Я сейчас просматриваю оба вложенных массива, чтобы проверить совпадение даты. В конце концов, у них будет намного больше людей и раз. Следует отметить, что в течение времени в массиве не будет отображаться дважды. Это будет использоваться для отображения того, кто доступен в течение этого времени на веб-странице. было бы гораздо лучше маршрут пойти, это сидит на ЭВМ и не будет привязан к DB2.
Если есть более простой способ идти о том, что я все уши, а также.
var data = []
var data = [
{title:'Person 1',contents:[
{primary:"7/09/2013"},{primary:"7/22/2013"},{primary:"10/15/2013"},{primary:"10/28/2013"},{primary:"1/21/2014"},{primary:"2/03/2014"}]},
{title:'Person 2',contents:[
{primary:"7/23/2013"},{primary:"8/05/2013"},{primary:"10/29/2013"},{primary:"11/11/2013"},{primary:"2/04/2014"},{primary:"2/17/2014"}]
}
];
Array.prototype.between = function(arg) {
for(var i=0, j=data.length; i < j; i++){
for(var p=0, plen=data[i].contents.length; p < plen; p++){
var d1 = new Date(data[i].contents[0].primary),
d2 = new Date(data[i].contents[1].primary),
d4 = new Date(data[i].contents[2].primary),
d5 = new Date(data[i].contents[3].primary),
d3 = new Date(arg);
}
//alert(data[i].title); //Using "data[i].title" will grab both titles but I only need one.
}
return ((d1.getTime() <= d3.getTime() && d3.getTime() <= d2.getTime()) || (d4.getTime() <= d3.getTime() && d3.getTime() <= d5.getTime()));
}
alert(data.between("10/29/2013"));
И скрипка ...
http://jsfiddle.net/sherman2k2/E3ASy/1/
Если вы сделали даты массивом вместо объектов с повторным ключом, было бы проще закодировать вашу логику. – dandavis
Ваш код для меня не имеет смысла. Каждый раз через этот внутренний цикл вы возвращаете значения всех этих «d» переменных. В конце функции значения будут соответствовать значениям последней итерации цикла. – Pointy