簡體   English   中英

如何在對象數組中添加、更新、刪除和搜索 object

[英]how to add, update, delete and search object inside array of objects

你好,我有一個空數組,然后我推入對象,但沒有得到更新,它又變回空了。 這在 node.js 上。 我需要獲取作為第一個參數 - 從命令行中對數組執行操作的三個字符串之一:'add' 將新項目添加到數組中,'delete' 用於刪除數組,'update' 用於更新數組。 第二個參數是書名、第三個參數作者和最后一個參數頁。

    let arrayOfBooks = [];

// Assign places to the array 
let whichArgument = process.argv[2]
let name = process.argv[3];
let author = process.argv[4];
let pages = Number(process.argv[5]);

// Function constructor
function Book(name,author,pages) {
    this.name = name;
    this.author = author;
    this.pages = pages;
}

// Add function
const addBook = (arrayOfBooks)=> {
    arrayOfBooks.push(new Book(name, author, pages));
    return arrayOfBooks
}
let result = addBook(arrayOfBooks);

您的方法有效,但也許您通過對數組和參數使用相同的名稱來丟失引用。 但無論如何,由於.push方法不會返回更新后的數組,只是修改了相同的數組實例,因此不需要返回推送的數組,只需使用它即可。

const arrayOfBooks = [
    {book: 1},
  {book: 2},
  {book: 3},
  {book: 4},
]

const addBook = (list, book) => {
    list.push(book)
}

addBook(arrayOfBooks, {book: 5, isTheNewOne: true})

const result = arrayOfBooks
console.log(result)
// Array with 5 elements now

小提琴

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM