извините, если мой заголовок действительно вводит в заблуждение, я до сих пор не знаю, как назвать мою проблему,

так что у меня есть набор массивов

0: {name: "Bob", time_in: "18:00:00", event_start: "19:00:00", attendance_status: "yes"}
1: {name: "Dino", time_in: "19:05:00", event_start: "19:00:00", attendance_status: "yes"}
2: {name: "Anna", time_in: "19:05:00", event_start: "19:00:00", attendance_status: "no"}
3: {name: "Tina", time_in: "19:00:00", event_start: "19:00:00", attendance_status: "N/A"}
4: {name: "Aiza", time_in: "18:00:00", event_start: "19:00:00", attendance_status: "N/A"}

length: 4
__proto__: Array(0)

Как я могу сделать, чтобы Боб был х10, если его время наступило раньше, чем начинается событие.

так будет так

0: {name: "Bob", time_in: "18:00:00", event_start: "19:00:00", attendance_status: "yes"}
1: {name: "Bob", time_in: "18:00:00", event_start: "19:00:00", attendance_status: "yes"}
2: {name: "Bob", time_in: "18:00:00", event_start: "19:00:00", attendance_status: "yes"}
3: {name: "Bob", time_in: "18:00:00", event_start: "19:00:00", attendance_status: "yes"}
4: {name: "Bob", time_in: "18:00:00", event_start: "19:00:00", attendance_status: "yes"}
5: {name: "Bob", time_in: "18:00:00", event_start: "19:00:00", attendance_status: "yes"}
6: {name: "Bob", time_in: "18:00:00", event_start: "19:00:00", attendance_status: "yes"}
7: {name: "Bob", time_in: "18:00:00", event_start: "19:00:00", attendance_status: "yes"}
8: {name: "Bob", time_in: "18:00:00", event_start: "19:00:00", attendance_status: "yes"}
9: {name: "Bob", time_in: "18:00:00", event_start: "19:00:00", attendance_status: "yes"}
10: {name: "Dino", time_in: "19:05:00", event_start: "19:00:00", attendance_status: "yes"}
11: {name: "Anna", time_in: "19:05:00", event_start: "19:00:00", attendance_status: "no"}
12: {name: "Tina", time_in: "19:00:00", event_start: "19:00:00", attendance_status: "N/A"}
13: {name: "Aiza", time_in: "18:00:00", event_start: "19:00:00", attendance_status: "N/A"}

их запись будет зависеть от их time_in и event_start

вот другие правила

TIME_IN          TIME_START     attendance_ status        
 6:00              7:00                 yes        = 10 tickets (EARLY + YES)
 7:05              7:00                 yes        = 5 tickets (LATE + YES)
 7:05              7:00                 no         = 3 tickets (LATE OR EARLY + NO)
 7:00              7:00                 N/A        = 1 tickets (LATE + N/A)
 6:00              7:00                 N/A        = 1 tickets(EARLY + N/A)

Я пытаюсь сделать это в JavaScript, но я до сих пор не знаю, как я могу сделать индекс кратным. Любая помощь могла бы быть полезна.

0
Janessa Bautista

1 ответ

Вы используете массив объектов. Для доступа к любому из них вы можете сделать следующее.

// CHANGE THE ARRAY NUMBER TO ANY IN THE ARRAY YOU WANT TO ACCESS
array[0].time_in; // OR
array[0].name;

Тогда, экстраполируя это, мы можем тогда ...

// DECLARE YOUR ARRAY, AND ANOTHER HOLDING ARRAY
var people = // YOUR ARRAY HERE
var holding = [];

// MAKE A LOOP FOR THE ARRAY
people.forEach(function(item){
    // CREATE AN IF LOOP TO CHECK YOUR CONDITION
    if(item.time_in < item.event_start) {
        for(var i = 0; i <10; i++) {
            holding.push(item);
        }
    } else {
        holding.push(item);
    }
});

// PLACE OVERWRITE THE FIRST ARRAY WITH YOUR HOLDING
people = holding;

Ваша домашняя работа - попытаться применить ваши «правила» к этой логике.

58588287