【问题标题】:Printing an object within an array showing as blank在显示为空白的数组中打印对象
【发布时间】:2020-08-27 18:58:33
【问题描述】:
function displayEvent(array) {
var vOutput = "";
var ind = 0;
for(var i = 0; i < array.length; i++) {
    ind += 1;
    vOutput += "Name " + ind + ": " + array[i].name + ", Age " + array[i].age + "<br />";
    }
    document.getElementById("output").innerHTML = vOutput;
}
function init() {
var arrEvent = [];
var objEvent = {};
objEvent.name = prompt("Enter name of Event");
objEvent.age = prompt("Enter number of Guests");
arrEvent.push(objEvent);
while(objEvent.name.length > 0) {
    objEvent.name = prompt("Enter name of Event");
    objEvent.age = prompt("Enter number of Guests");
    if(objEvent.name.length > 0) {
        arrEvent.push(objEvent);
    }
}
displayEvent(arrEvent);
}
window.onload = init;

尝试将对象数组打印到 HTML 段落 id 中,每当我执行上面的代码时,我都会得到正确的输出,但数组元素只显示为空白。

【问题讨论】:

    标签: javascript html arrays object output


    【解决方案1】:

    你总是将同一个对象推入你的数组。

    改为:

    function displayEvent(array) {
    var vOutput = "";
    var ind = 0;
    for(var i = 0; i < array.length; i++) {
        ind += 1;
        vOutput += "Name " + ind + ": " + array[i].name + ", Age " + array[i].age + "<br />";
        }
        document.getElementById("output").innerHTML = vOutput;
    }
    function init() {
    var arrEvent = [];
    var name = '';
    var age = '';
    name = prompt("Enter name of Event");
    age = prompt("Enter number of Guests");
    arrEvent.push({name: name, age: age});
    while(name.length > 0) {
        name = prompt("Enter name of Event");
        age = prompt("Enter number of Guests");
        if(name.length > 0) {
            arrEvent.push({name: name, age: age});
        }
    }
    displayEvent(arrEvent);
    }
    window.onload = init;
    

    【讨论】:

    • 感谢您的帮助!只需从 if 和 while 语句的条件中删除 objEvent 即可使其工作:)
    • @PYUO 是的!已编辑。
    猜你喜欢
    • 1970-01-01
    • 2021-02-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多