Je l'ai déjà résolu. C'est juste un problème stupide que j'ai négligé. C'est à propos de l'index du tableau.
Je viens de mettre
tmpRoomlistArray[c-1]
dans ma fonction et ça a marché. Je pense que la solution est juste de se reposer davantage, pour que tu puisses voir le problème plus clairement.
Pour ceux qui veulent savoir ce qui s'est passé, lisez ce qui suit.
J'ai une fonction qui insère une ligne dans le tableau, et cette fonction a 2 paramètres, qui est un tableau. Donc cette fonction va insérer des lignes de façon continue dans le tableau. Elle ne s'arrêtera pas avant d'avoir atteint la fin du tableau.
var day = ["1","2","3"];
var room = ["room1","room2","room3",....,"room16"] // 16 Elements;
var timeForHeader = ["08:00","09:00",....."20:00"] // 25 Elements;
function addRow(paramDay,paramRoom){
// this function will create many rows depends on paramRoom length and columns depends on length of time header.
var dayLength = day.length;
var roomLength = room.length;
var timeForHeaderLength = timeForHeader.length;
for(var i = 0; i < dayLength; i++)
{
// this is for rows
for(var c = 0; c < timeForHeaderLength+1; c++)
{
// I made c +1 timeForHeaderLength because I want a header
//this is for column
if(c == 0)
{
// if c == 0 mean I will insert a header row element in my table
var tr = $("<tr/>");
var td = $("<td/>",{text:timeForHeader[0]+" - "+timeForHeader[1]}).appendTo(tr);
...
...
var td23 = $("<td/>",{text:timeForHeader[23]+" - "+timeForHeader[24]}).appendTo(tr);
$("#mytableId").append(tr);
}else{
// this row that contain room's name and content
// and this is the part that cause me a problem.
// in this else condition c must be 1-17 so when I access to tmpRoomlistArray that contains 16 Element
// So right now You guys should know right. The tmpRoomlistArray's index must be 0 - 16
// it worked when c is between 1 - 16, But it didn't work on the last c cause c is equal to 17
console.log(tmpRoomlistArray[c].room_name);
let roomName = tmpRoomlistArray[c].room_name;
//It should be
let roomName = tmpRoomlistArray[c-1].room_name;
// Hahahahahahahahahahahahahahahahahhaha
}
}
}
}