我正在做一個圖書館。let myLibrary = []; //to store my Book Objectsfunction Book(title, author, onPage, totalPages) { //constructor function this.title = title; this.author = author; this.onPage = onPage; this.totalPages = totalPages; this.info = function() { return this; }}現在我創建了一個函數,它將生成一個 Book 對象并將用戶輸入作為屬性值:function addBookToLibrary() { let a = document.getElementById('bookTitle').value; let b = document.getElementById('authorName').value; let c = document.getElementById('onPage').value; let d = document.getElementById('numOfPages').value; myLibrary.push(new Book(a, b, c, d));}我創建了一個函數,它將循環遍歷myLibrary數組并根據屬性值對它們進行排序。例如:function showBooks() { for (i = 0; i <= myLibrary.length; i++) { if (Number(myLibrary[i].onPage) < Number(myLibrary[i].totalPages) let newLi = document.createElement('li'); newLi.innterText = myLibrary[i].title + ' by ' + myLibrary[i].author; inProgressBooks.prepend(newLi); } }}現在我將加載我的頁面并使用 addBookToLibrary 函數添加一個對象?,F在 myLibrary[0].onPage 返回一個由 addBookToLibrary 從輸入中獲取的數字。那么為什么函數 showBooks 會失敗呢?它說它無法讀取未定義的 onPage 屬性。
函數看不到 Object 屬性,但 console.log 可以
斯蒂芬大帝
2023-03-24 14:48:12