首页 > 解决方案 > 在 React 组件中实例化 JavaScript 对象

问题描述

我有 javascript 类,其中包含一些数据和两个函数。

export class BookStore {
  constructor() {
    this._books = [
      { id: 1,title: "How to Learn JavaScript - Vol 1", info: "Study hard"},
      { id: 2,title: "How to Learn ES6", info: "Complete all exercises :-)"},
      { id: 3,title: "How to Learn React",info: "Complete all your CA's"},
      { id: 4,title: "Learn React", info: "Don't drink beers, until Friday (after four)"
    }]
    this._nextID= 5;
  }

  get books(){ return this._books;}

  addBook(book){
    book.id = this._nextID;
    this._books.push(book);
    this._nextID++;
  }
}

现在我想做一个类的对象,并控制台记录它的书籍项目

const book =Object.create(BookStore)
console.log(book.books)

我尝试了几件事,例如 Object 创建方法,并尝试直接调用它。

import {BookStore} from './BookStore/BookStore.js'

标签: javascript

解决方案


您使用Object.create而不是new关键字来实例化类。

使用以下代码:

const book = new BookStore();
console.log(book.books);

Object.create只是复制对象的原型,但不调用constructor.

您可以在相关问题中阅读有关了解 Object.create的更多信息。


推荐阅读