0

I need to filter a json which i get externally from API. The json file is like this :

{
 "get":"players",
   "parameters":{
      "team":"504",
      "season":"2021"
   },
   "response":[
      {
         "player":{
            "id":1011,
            "name":"K. R\u00fcegg",
            "firstname":"Kevin",
            "lastname":"R\u00fcegg",
           [...]
      },
      {
         "player":{
            "id":14268,
            "name":"I. Pandur",
            "firstname":"Ivor",
            "lastname":"Pandur",
            "age":21,
            "birth":{ [...]

Syntax :

      fetch(url)
            .then(response => response.json())
            .then((data) => {
               [...]
              });

I need to get only the selected player id like this :

 "player":{
            "id":1011,
            "name":"K. R\u00fcegg",
            "firstname":"Kevin",
            "lastname":"R\u00fcegg",
           [...]
      },
PeraDev
  • 27
  • 1
  • 4
  • @rayhatfield i cannot understand how to add the find function in my code sorry – PeraDev Nov 09 '21 at 16:27
  • @PeraDev Then I'd recommend you read up on [javascript object basics](https://developer.mozilla.org/en-US/docs/Learn/JavaScript/Objects/Basics) and [Array.find](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/find). – ray Nov 09 '21 at 16:54
  • Does this answer your question? [Js parse and filter a json](https://stackoverflow.com/questions/69887562/js-parse-and-filter-a-json) – Timur Nov 09 '21 at 17:01

1 Answers1

1

I hope following example code will give you some idea..

I used JsonPlaceholder Mock API https://jsonplaceholder.typicode.

Above mentioned API giving data ouput is:

[
  {
    "userId": 1,
    "id": 1,
    "title": "delectus aut autem",
    "completed": false
  },
  {
    "userId": 1,
    "id": 2,
    "title": "quis ut nam facilis et officia qui",
    "completed": false
  },
  {
    "userId": 1,
    "id": 3,
    "title": "fugiat veniam minus",
    "completed": false
  },
  [...]

I have to separate following selected result from above mentioned API, (It's Id is 187):

{
  completed: false,
  id: 187,
  title: "consequuntur animi possimus",
  userId: 10
}

For that I have used following JS code:

var  targetID = 187; // need to filter with following ID

fetch('https://jsonplaceholder.typicode.com/todos/')
  .then(response => response.json())
  .then((data) => {
    const result = data.filter(function (el) {
      return el.id == targetID; // Changed the matching value
    });
    console.log('FIltered Value', result);
});

Working Fiddle https://jsfiddle.net/katheer_mizal/9jdh5wuy/1/

More Details:

Js parse and filter a json

Find object by id in an array of JavaScript objects

Katheer
  • 345
  • 1
  • 9