javascript - 限制 json 的结果

标签 javascript json for-loop html-lists lodash

怎么可能只显示 3 个结果?我用 for-Loop 尝试过,但它总是显示 NaN。我正在使用 Lodash。这是我的 jsFiddle:https://jsfiddle.net/kxohm0qh/ .

我只想显示 3 个结果。就像我说的,当我没有像这样使用 _.map 时,我用 for-Loop 尝试了它:

for(var i = 0; i<3; i++){
var sorted = _.sortBy(data.car, 'roads').reverse();
console.log(sorted[i]);
}

它在控制台中工作。但是如果我将这个 for-Loop 集成到 jsFiddle 中,它就会中断:(。我也在 Lodash 中搜索了 limit 函数,但没有希望。

最佳答案

使用_.take()限制结果:

var data = {
  "cars": [{
    "number": 5,
    "car_name": "Mercedes",
    "roads": 55
  }, {
    "number": 6,
    "car_name": "Ford",
    "roads": 41
  }, {
    "number": 9,
    "car_name": "Darcia",
    "roads": 36
  }, {
    "number": 3,
    "car_name": "BMW",
    "roads": 61
  }, {
    "number": 11,
    "car_name": "Nissan",
    "roads": 25
  }]
};

var sorted = _.take(_.reverse(_.sortBy(data.cars, 'roads')), 3);

console.log(sorted);

/** you can also use a chain **/

var sortedchained = _(data.cars)
  .sortBy('roads')
  .reverse()
  .take(3)
  .value();

console.log(sortedchained);
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.16.6/lodash.min.js"></script>

关于javascript - 限制 json 的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40378521/

相关文章:

ios - 快速创建井字游戏网格?

Javascript "for"循环函数序列

javascript - 为什么我的 Highcharts 没有加载到后续的 jquery-ajax 调用中?

javascript - 如何使用其 ID 在 jquery/javascript 中选择动态生成的表单元素?

javascript - 对返回数组感到困惑#map javascript

javascript - '&&' and ' | |' vs ' ? :'

c++ - 通过 Boost ASIO 发送对象时断言 `IsObject()' 失败

c - 对于循环优化?如果如果与如果如果如果

javascript - 如何在 JS 中遍历 JSON

javascript - 为什么要使用 JSON.parse(decodeURIComponent(staticString))?