简体   繁体   中英

Lodash get key values from array of objects

I have an array of objects ,

var out = [{
    "type": "1",
    "from": "13052033555",
    "to": "4444444",
    "amount": "40000",
    "date": 1461575799,
    "status": "1"
  }, {
    "type": "2",
    "from": "13052033555",
    "to": "1111111",
    "amount": "30000",
    "date": 1461575884,
    "status": "1"
  }...
];

I get only it's values without keys

Now i used this function to get the values from array like this, I pass array then it returns only values without keys

function foo(a) {
  var values = [];
  for (var i = 0; i < a.length; i++) {
    var obj = a[i];
    var arr = Object.keys(obj).map(function(k) {
      return obj[k]
    });
    values.push("[" + arr + "],");
  }
  return values.join('');
}

Then it returns the values data without keys like this,

[ ["1","13052033555","4444444","40000",1461575799,"1"],
  ["2","13052033555","1111111","30000",1461575884,"1"],
    ....]

Question: How can i change my foo function to lodash?

Use _.values()

  var out = [{ "type": "1", "from": "13052033555", "to": "4444444", "amount": "40000", "date": 1461575799, "status": "1" }, { "type": "2", "from": "13052033555", "to": "1111111", "amount": "30000", "date": 1461575884, "status": "1" } ]; for (var i = 0; i < out.length; i++) { out[i] = _.values(out[i]); } console.log(out) 
 <script src="https://cdn.jsdelivr.net/lodash/4.13.1/lodash.min.js"></script> 

out.map(_.values);

或者如果低于ES5: _.map(out, _.values);

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM