输出对象中的属性

时间:2015-08-10 16:59:28

标签: javascript jquery arrays object

我正在使用以下javascript:

a

按照以下方式构建我的数据:

    var hours = $(".input_hr");
    var minutes = $(".input_min");
    var categories = $(".input_cat");
    for(var i=0;i<categories.length;i++){
        if (categories[i].value === "Entertainment") {
            category_hours.Entertainment.push({hour:hours[i].value,minute:minutes[i].value});//add object literal
        };

    }

我想控制日志&#34;小时&#34;属性。我尝试过使用:

category_hours = {

  Entertainment = [{hour:   ,minute:  }]
}

但我一直收到一条错误消息,上面写着&#34;未定义娱乐&#34;。

如果我jQuery.each(category_hours, function() { console.log(Entertainment.hour) }) 我得到&#34;小时的属性未定义&#34;

2 个答案:

答案 0 :(得分:0)

试试这个:

var hours = $(".input_hr");
var minutes = $(".input_min");
var categories = $(".input_cat");
for (var i = 0; i < categories.length; i++) {
    if (categories[i].value === "Entertainment") {
        category_hours.Entertainment.push({hour: hours[i].value, minute: minutes[i].value});
    }
}
jQuery.each(category_hours.Entertainment, function (index,elem) {
    console.log(elem);
});

答案 1 :(得分:0)

你必须遍历Entertainment数组,因为你的category_hours不是一个数组,它被定义为一个对象:

category_hours = {

所以这可行:

jQuery.each(category_hours.Entertainment, function () {
    console.log(this.hour);
});