获取对象数组中对象 属性 的值
Get value of object property inside array of objects
我有对象数组:
var ads = [
{
adName: "Football Team",
adText: ["....","...."],
adImg: ["images/img1.png", "images/img2.png", "", "", ""],
adPreviewLink: "templateA",
adSeconds: 15,
adTime: ad1Time
},{
adName: "Basketball Team",
adText: ["...","..."],
adImg: ["images/img-b1.png", "images/img-b2.png", "", "", ""],
adPreviewLink: "templateB",
adSeconds: 10,
adTime: ad2Time
}];
adTime 属性也是一个对象:
var ad1Time = {
hours: ["6","12"],
day: [weekdaysEnum.monday, weekdaysEnum.wednsday],
month: [monthEnum.march, monthEnum.april],
year: 2016,
daysNumber: []
}
现在我想检查 adTime>>年份,但出现错误。
Uncaught TypeError: Cannot read property 'year' of undefined
这是我尝试检查 属性:
的方式
var date = new Date();
var now_day = date.getDate();
var now_month = date.getMonth();
var now_year = date.getFullYear();
for (var i = 0; i < ads.length; i++) {
if (ads[i].adTime.year == now_year) {
for(var index_month; index_month < ads[i].adTime.month.length; index_month++)
{
if(ads[i].adTime.month[index_month] == now_month)
console.log(ads[i].adName);
}
}
}
那么错在哪里呢(这里的错:ads[i].adTime.year)?谢谢。
您需要在'ads'之前定义'ad1Time'和'ad2Time'。
我有对象数组:
var ads = [
{
adName: "Football Team",
adText: ["....","...."],
adImg: ["images/img1.png", "images/img2.png", "", "", ""],
adPreviewLink: "templateA",
adSeconds: 15,
adTime: ad1Time
},{
adName: "Basketball Team",
adText: ["...","..."],
adImg: ["images/img-b1.png", "images/img-b2.png", "", "", ""],
adPreviewLink: "templateB",
adSeconds: 10,
adTime: ad2Time
}];
adTime 属性也是一个对象:
var ad1Time = {
hours: ["6","12"],
day: [weekdaysEnum.monday, weekdaysEnum.wednsday],
month: [monthEnum.march, monthEnum.april],
year: 2016,
daysNumber: []
}
现在我想检查 adTime>>年份,但出现错误。
Uncaught TypeError: Cannot read property 'year' of undefined
这是我尝试检查 属性:
的方式var date = new Date();
var now_day = date.getDate();
var now_month = date.getMonth();
var now_year = date.getFullYear();
for (var i = 0; i < ads.length; i++) {
if (ads[i].adTime.year == now_year) {
for(var index_month; index_month < ads[i].adTime.month.length; index_month++)
{
if(ads[i].adTime.month[index_month] == now_month)
console.log(ads[i].adName);
}
}
}
那么错在哪里呢(这里的错:ads[i].adTime.year)?谢谢。
您需要在'ads'之前定义'ad1Time'和'ad2Time'。