2016-11-28 98 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();