如何从对象 属性 的特定索引中获取值,该索引具有 javascript 中推送数组的值

how to fetch a value from specific index of object property that has the values of pushed array in javascript

我正在尝试从对象的特定索引中获取值 属性。我使用 push 函数将值推送到对象 属性,但是当我调用 result.marks[0] 时,它 returns 数组中的所有值。

<!DOCTYPE html>
<html>

    <body>
        <p id="demo"></p>
        <script>
        try {
            let result = {
                marks: [], // 
            };
            const n = 5;
            let text = "";
            for (let i = 0; i < n; i++) {
                text += prompt("Enter value of " + i, i) + "<br>";
            }
            result.marks.push(text);
            document.getElementById("demo").innerHTML = result.marks[0]; // it does not print the specific index value.it return the whole values in an array.
        }
        catch (err) {
            document.write(err);
        };
        </script>
    </body>

</html>

在您的循环中,您将所有输入连接到一个字符串中并将该字符串推送到数组。

loop 1: text="0<br>"
loop 2: text="0<br>1<br>"
and so on.

在循环结束时,文本值为 "0<br>1<br>2<br>3<br>4<br>5<br>",然后将其推送到数组

因此,当您获取索引 0 元素时,它 returns 包含所有值的字符串。您可以做的是停止连接并将每个输入推送到循环内的数组

<html>

    <body>
        <p id="demo"></p>
        <script>
        try {
            let result = {
                marks: [], // 
            };
            const n = 5;
            let text = "";
            for (let i = 0; i < n; i++) {
                text = prompt("Enter value of " + i, i) + "<br>";
                result.marks.push(text)
            }
            document.getElementById("demo").innerHTML = result.marks[1]; // it now returns value from specific index.
        }
        catch (err) {
            document.write(err);
        };
    </script>
</body>

</html>