Hướng dẫn javascript array fetch - tìm nạp mảng javascript

Đây là API http://skunkworks.ignitesol.com:8000/books/, tôi đang cố gắng tìm nạp kết quả mảng từ nó bằng phương pháp tìm nạp mà thay vào đó nhận được một lỗi không thể lấy được giá trị của

Nội dung chính

  • Làm thế nào để bạn tìm nạp dữ liệu từ mảng các đối tượng trong JS?
  • Làm cách nào để lấy một mảng các đối tượng trong React?
  • Làm thế nào để bắt đầu mảng trong JavaScript?
  • Mảng JavaScript có phải là một đối tượng không?

import React, { Component } from 'react';

class App extends Component {
  constructor() {
    super()
    this.state = {
      books: []
    }
  }

  componentDidMount() {
    fetch('http://skunkworks.ignitesol.com:8000/books/')
      .then(res => res.json())
      .then(data => this.setState({ books: data }))
      .catch(e => {
        console.log(e);
        return e;
      });
  }

  render() {
    let book = []
    book = this.state.books.results;
    console.log(book[0])
    return (
      

Books

) } } export default App;

Đây là mã của tôi.

Ngoài ra, tôi đã quan sát thấy rằng dữ liệu JSON thường giống như [{}] nhưng ở đây là định dạng {}. Vui lòng gợi ý cho tôi một số giải pháp .....

Đã hỏi ngày 9 tháng 11 năm 2019 lúc 7:00Nov 9, 2019 at 7:00Nov 9, 2019 at 7:00

Hướng dẫn javascript array fetch - tìm nạp mảng javascript

2

Như tôi thấy từ liên kết URL của bạn, mảng dữ liệu JSON của bạn có mặt trong khóa kết quả của đối tượng được trả về từ API.

Vì vậy, nếu bạn chỉ quan tâm bởi kết quả, bạn nên làm điều gì đó như thế:


import React, { Component } from 'react';

class App extends Component {

  state = {
    books: []
  }

  async componentDidMount() {
    const objectFromUrl = await fetch('http://skunkworks.ignitesol.com:8000/books/')
    const data = await objectFromUrl.json() //first way
    // or you can use destructuring way 
    const { results } = await objectFromUrl.json() //second way
    this.setState({
      books: data.results // results key contains your '[{}]' data an array of objects
    })
  }

  render() {
    const { books } = this.state

    return (
      

Books

{books.map(book => (

{book.id}

)}
); } // You can use destructuring again to get only key you're interested by render() { const { books } = this.state return (

Books

{books.map(({id, formats}) => (

{id}

{ formats[ˋapplication/pdf’] }

)}
); } }

Đã trả lời ngày 9 tháng 11 năm 2019 lúc 7:22Nov 9, 2019 at 7:22Nov 9, 2019 at 7:22

HurobakihurobakiHurobakiHurobaki

3.2286 huy hiệu vàng21 Huy hiệu bạc40 Huy hiệu đồng6 gold badges21 silver badges40 bronze badges6 gold badges21 silver badges40 bronze badges

6


Hãy nói rằng sau đây là mảng đối tượng của chúng tôi:

const details =
   [
      {
         employeeFirstName: "John",
         employeeLastName: "Doe"
      },
      {
         employeeFirstName: "David",
         employeeLastName: "Miller"
      },
      {
         employeeFirstName: "John",
         employeeLastName: "Smith"
      }
   ]

Thí dụ

Sau đây là mã để tìm nạp các giá trị cụ thể, trong trường hợp này với tên đầu tiên là John John - -

const details =
   [
      {
            employeeFirstName: "John",
            employeeLastName: "Doe"
      },
      {
         employeeFirstName: "David",
         employeeLastName: "Miller"
      },
      {
         employeeFirstName: "John",
         employeeLastName: "Smith"
      }
   ]
for (var index = 0; index < details.length; index++) {
   if (details[index].employeeFirstName === "John") {
      console.log("FirstName=" + details[index].employeeFirstName + " LastName= " + details[index].employeeLastName);
   }
}

Để chạy chương trình trên, bạn cần sử dụng lệnh sau -

node fileName.js.

Ở đây, tên tệp của tôi là demo223.js.

Đầu ra

Đầu ra như sau -

PS C:\Users\Amit\JavaScript-code> node demo223.js
FirstName=John LastName= Doe
FirstName=John LastName= Smith

Cập nhật vào ngày 03 tháng 10 năm 2020 14:24:47

  • Câu hỏi và câu trả lời liên quan
  • Chỉ nhận được các giá trị cụ thể trong một mảng các đối tượng trong JavaScript?
  • Tìm nạp các giá trị thay thế thậm chí từ một mảng javascript?
  • Tìm nạp các tài liệu cụ thể với các giá trị mảng trong Mongod
  • Tìm nạp các giá trị bằng cách bỏ qua một giá trị cụ thể trong JavaScript?
  • Tìm nạp các giá trị trường cụ thể trong MongoDB
  • Truy vấn MySQL để tìm nạp các bản ghi cụ thể được khớp từ một mảng (giá trị phân tách bằng dấu phẩy)
  • Bộ lọc mảng các đối tượng bởi một thuộc tính cụ thể trong JavaScript?
  • Tìm giá trị khóa cụ thể trong mảng của các đối tượng bằng JavaScript
  • Tạo một mảng bản ghi từ danh sách (phẳng) của mảng và tìm nạp các giá trị cụ thể dựa trên chỉ mục trong Numpy
  • Thêm các giá trị của các phím khớp trong mảng của các đối tượng - JavaScript
  • Tìm kiếm từ một mảng các đối tượng thông qua mảng chuỗi để lấy mảng các đối tượng trong JavaScript
  • Tổng các giá trị số tương tự trong mảng của các đối tượng - JavaScript
  • Sắp xếp một mảng các đối tượng theo giá trị thuộc tính - JavaScript
  • Làm thế nào để có được một đối tượng cụ thể từ mảng các đối tượng bên trong tài liệu MongoDB cụ thể?
  • Xóa các bản sao khỏi một mảng các đối tượng JavaScript

Làm thế nào để bạn tìm nạp dữ liệu từ mảng các đối tượng trong JS?

Tìm một giá trị trong mảng của các đối tượng trong JavaScript...

Sử dụng mảng. nguyên mẫu. tìm () chức năng. ....

Sử dụng mảng. nguyên mẫu. Hàm FindIndex (). ....

Sử dụng mảng. nguyên mẫu. chức năng foreach (). ....

Sử dụng mảng. nguyên mẫu. ....

Sử dụng jQuery. JQuery's $. ....

Sử dụng thư viện Lodash/Undercore. Thư viện dấu gạch dưới và lodash có _ ..

Làm cách nào để lấy một mảng các đối tượng trong React?

Để tìm một đối tượng trong một mảng trong React: Gọi phương thức Find () trên mảng, chuyển nó một hàm.Hàm sẽ trả về kiểm tra bình đẳng trên tài sản có liên quan.Phương thức Find () trả về giá trị đầu tiên trong mảng thỏa mãn điều kiện.Call the find() method on the array, passing it a function. The function should return an equality check on the relevant property. The find() method returns the first value in the array that satisfies the condition.Call the find() method on the array, passing it a function. The function should return an equality check on the relevant property. The find() method returns the first value in the array that satisfies the condition.

Làm thế nào để bắt đầu mảng trong JavaScript?

Tạo một mảng bằng cách sử dụng một mảng theo nghĩa đen là cách dễ nhất để tạo ra một mảng javascript.Cú pháp: const mảng_name = [item1, item2, ...];Đó là một thực tế phổ biến để khai báo các mảng với từ khóa Const.const array_name = [item1, item2, ...]; It is a common practice to declare arrays with the const keyword.const array_name = [item1, item2, ...]; It is a common practice to declare arrays with the const keyword.

Mảng JavaScript có phải là một đối tượng không?

Đây là mã của tôi.