2016-11-28 40 views
0

我一直在尋找一個網頁的功能,應該顯示來自JSON對象的信息,這取決於兩個屬性,考勤日和開始時間。該JSON和功能如下如下:JSON/JavaScript函數問題

var courses = [{ 
 
    "dept": "CSC", 
 
    "id": "3380", 
 
    "instructor": "Douglas", 
 
    "Location": "012 Lockett", 
 
    "Start_Time": "8:00", 
 
    "End_Time": "9:30", 
 
    "Attendance": "Monday" 
 
}, { 
 
    "dept": "CSC", 
 
    "id": "3380", 
 
    "instructor": "Douglas", 
 
    "Location": "012 Lockett", 
 
    "Start_Time": "10:30", 
 
    "End_Time": "11:30", 
 
    "Attendance": "Monday" 
 
}, { 
 
    "dept": "CSC", 
 
    "id": "3380", 
 
    "instructor": "Douglas", 
 
    "Location": "012 Lockett", 
 
    "Start_Time": "12:30", 
 
    "End_Time": "1:30", 
 
    "Attendance": "Wednesday" 
 
}]; 
 

 
function plotCourse() { 
 
    var i; 
 
    for (i = 0; i < courses.length; i++) { 
 
    var course = courses[i]; 
 
    console.log(course); 
 
    if (course.Attendance == "Monday" && course.Start_Time == "10:30") { 
 
     alert(course.Attendance); 
 
     alert(course.Start_Time); 
 
    } 
 
    } 
 
}

我使用警報()用於測試目的。但是,我似乎沒有得到一個返回的值,而且我有點難過,可能會發生什麼。

在此先感謝。

+4

調用plotCourse() – kjonsson

+1

這只是一種預感,我可能是錯的,但在你的例子中,你實際上不叫'plotCourse()'函數。你只需定義它。 – amenthes

回答

1

希望你在調用函數。

在這裏工作:

var courses = [{ 
 
    "dept": "CSC", 
 
    "id": "3380", 
 
    "instructor": "Douglas", 
 
    "Location": "012 Lockett", 
 
    "Start_Time": "8:00", 
 
    "End_Time": "9:30", 
 
    "Attendance": "Monday" 
 
}, { 
 
    "dept": "CSC", 
 
    "id": "3380", 
 
    "instructor": "Douglas", 
 
    "Location": "012 Lockett", 
 
    "Start_Time": "10:30", 
 
    "End_Time": "11:30", 
 
    "Attendance": "Monday" 
 
}, { 
 
    "dept": "CSC", 
 
    "id": "3380", 
 
    "instructor": "Douglas", 
 
    "Location": "012 Lockett", 
 
    "Start_Time": "12:30", 
 
    "End_Time": "1:30", 
 
    "Attendance": "Wednesday" 
 
}]; 
 

 
function plotCourse() { 
 
    var i; 
 
    for (i = 0; i < courses.length; i++) { 
 
    var course = courses[i]; 
 
    console.log(course); 
 
    if (course.Attendance == "Monday" && course.Start_Time == "10:30") { 
 
     console.log(course.Attendance); 
 
     console.log(course.Start_Time); 
 
    } 
 
    } 
 
} 
 
plotCourse(); //Involed the function

2

你忘了把它叫做:plotCourse();,或使用IIFE代替。請檢查這一個

var courses = [{ 
 
    "dept": "CSC", 
 
    "id": "3380", 
 
    "instructor": "Douglas", 
 
    "Location": "012 Lockett", 
 
    "Start_Time": "8:00", 
 
    "End_Time": "9:30", 
 
    "Attendance": "Monday" 
 
}, { 
 
    "dept": "CSC", 
 
    "id": "3380", 
 
    "instructor": "Douglas", 
 
    "Location": "012 Lockett", 
 
    "Start_Time": "10:30", 
 
    "End_Time": "11:30", 
 
    "Attendance": "Monday" 
 
}, { 
 
    "dept": "CSC", 
 
    "id": "3380", 
 
    "instructor": "Douglas", 
 
    "Location": "012 Lockett", 
 
    "Start_Time": "12:30", 
 
    "End_Time": "1:30", 
 
    "Attendance": "Wednesday" 
 
}]; 
 

 
(function() { 
 
    var i; 
 
    for (i = 0; i < courses.length; i++) { 
 
    var course = courses[i]; 
 
    console.log(course); 
 
    if (course.Attendance == "Monday" && course.Start_Time == "10:30") { 
 
     alert(course.Attendance); 
 
     alert(course.Start_Time); 
 
    } 
 
    } 
 
})(); /* IIFE*/

0

你提出的是不是被調用函數的例子。 iniltre我做了一個小的修正到FOR循環.. =)

function plotCourse() { 
    for (var i = 0; courses[i]; i++) { // Control if the element exists 
    var course = courses[i]; 
    console.log(course); 
    if (course.Attendance == "Monday" && course.Start_Time == "10:30") { 
     alert(course.Attendance); 
     alert(course.Start_Time); 
    } 
    } 
} 

plotCourse(); // launch the function! 
0

正如其他人已經指出的那樣,你需要調用的函數。當我打電話時它正在爲我工​​作。

1

您忘記了撥打plotCourse()功能。

var courses = [{ 
 
    "dept": "CSC", 
 
    "id": "3380", 
 
    "instructor": "Douglas", 
 
    "Location": "012 Lockett", 
 
    "Start_Time": "8:00", 
 
    "End_Time": "9:30", 
 
    "Attendance": "Monday" 
 
}, { 
 
    "dept": "CSC", 
 
    "id": "3380", 
 
    "instructor": "Douglas", 
 
    "Location": "012 Lockett", 
 
    "Start_Time": "10:30", 
 
    "End_Time": "11:30", 
 
    "Attendance": "Monday" 
 
}, { 
 
    "dept": "CSC", 
 
    "id": "3380", 
 
    "instructor": "Douglas", 
 
    "Location": "012 Lockett", 
 
    "Start_Time": "12:30", 
 
    "End_Time": "1:30", 
 
    "Attendance": "Wednesday" 
 
}]; 
 

 
function plotCourse() { 
 
    var i; 
 
    for (i = 0; i < courses.length; i++) { 
 
    var course = courses[i]; 
 
    console.log(course); 
 
    if (course.Attendance == "Monday" && course.Start_Time == "10:30") { 
 
     alert(course.Attendance); 
 
     alert(course.Start_Time); 
 
    } 
 
    } 
 
} 
 

 
plotCourse();