Как отфильтровать массив по ключу и pu sh значение в другой массив, используя javascript - PullRequest
2 голосов
/ 05 августа 2020

это мой первый массив

data=  [{
  "id":1111,
  "date":"2020-08-03T08:00:00+00:00",
  "age":23,
   "email":"test@yahoo.com",
   "address":"phill road",
   "salary":1222.00
},

 {
  "id":222,
  "date":"2020-08-03T08:00:00+00:00",
  "age":24,
   "email":"tes22t@yahoo.com",
   "address":"phill2222 road",
   "salary":3344
}
]

второй массив должен выглядеть так

  dataNew=  [1222.00,3344]

Мне нужен второй массив, который только содержат значение зарплаты . Как я могу отфильтровать первый массив, что если ключи name = "salary", pu sh значение в новый массив. Искал так много предложений, но у меня ничего не работает ..

Ответы [ 5 ]

2 голосов
/ 05 августа 2020

data=  [{
  "id":1111,
  "date":"2020-08-03T08:00:00+00:00",
  "age":23,
   "email":"test@yahoo.com",
   "address":"phill road",
   "salary":1222.00
},
 {
  "id":222,
  "date":"2020-08-03T08:00:00+00:00",
  "age":24,
   "email":"tes22t@yahoo.com",
   "address":"phill2222 road",
   "salary":3344
},
 {
  "id":223,
  "date":"2020-08-03T08:00:00+00:00",
  "age":24,
   "email":"tes22t@yahoo.com",
   "address":"phill2222 road"
}
]

console.log(data.filter(e => e.salary).map(e => e.salary));
2 голосов
/ 05 августа 2020
data=  [{
  "id":1111,
  "date":"2020-08-03T08:00:00+00:00",
  "age":23,
   "email":"test@yahoo.com",
   "address":"phill road",
   "salary":1222.00
},

 {
  "id":222,
  "date":"2020-08-03T08:00:00+00:00",
  "age":24,
   "email":"tes22t@yahoo.com",
   "address":"phill2222 road",
   "salary":3344
}
]
const dataNew=[]
data.map(item=>item.salary?dataNew.push(item.salary):null)
2 голосов
/ 05 августа 2020

Вы можете использовать .map () в массиве

data.map(item => item.salary)
2 голосов
/ 05 августа 2020

Это

data = [{
    "id": 1111,
    "date": "2020-08-03T08:00:00+00:00",
    "age": 23,
    "email": "test@yahoo.com",
    "address": "phill road",
    "salary": 1222.00
  },

  {
    "id": 222,
    "date": "2020-08-03T08:00:00+00:00",
    "age": 24,
    "email": "tes22t@yahoo.com",
    "address": "phill2222 road",
    "salary": 3344
  }
]
arr = []
for (i = 0; i < data.length; i++) {
  console.log(data[i]['salary'])
  arr.push(data[i]['salary']);
}
console.log(arr)
2 голосов
/ 05 августа 2020

data=  [{
  "id":1111,
  "date":"2020-08-03T08:00:00+00:00",
  "age":23,
   "email":"test@yahoo.com",
   "address":"phill road",
   "salary":1222.00
},

 {
  "id":222,
  "date":"2020-08-03T08:00:00+00:00",
  "age":24,
   "email":"tes22t@yahoo.com",
   "address":"phill2222 road",
   "salary":3344
}]

data.map(item =>  item.salary)
...