suchen

Heim  >  Fragen und Antworten  >  Hauptteil

javascript - JS-Datenverarbeitung, wie berechnet man den niedrigsten monatlichen Wert?

Die zurückgegebenen Daten können sich über mehrere Monate erstrecken. Wie berechnet man den niedrigsten Preis für jeden Monat?
Das Folgende ist die Datenstruktur:

Vielen Dank~

淡淡烟草味淡淡烟草味2830 Tage vor626

Antworte allen(2)Ich werde antworten

  • 世界只因有你

    世界只因有你2017-05-19 10:40:25

    var data = [
        { date: "2017-04-20", price: 1170 },
        { date: "2017-04-21", price: 1450 },
        { date: "2017-04-22", price: 960 },
        { date: "2017-04-25", price: 2300 },
        { date: "2017-05-21", price: 1203 },
        { date: "2017-05-22", price: 1206 },
        { date: "2017-03-20", price: 658 }
    ];
    var monthMap = {};
    data.forEach(function (n) {
        var month = n.date.substring(0, 7);
        if (!monthMap[month] || monthMap[month] > n.price) {
            monthMap[month] = n.price;
        }
    });
    // {2017-04: 960, 2017-05: 1203, 2017-03: 658}
    console.log(monthMap);
    

    Antwort
    0
  • 阿神

    阿神2017-05-19 10:40:25

    var arr = [
        {
            date: '2017-04-20',
            price: 1170
        },
        {
            date: '2017-04-21',
            price: 1450
        },
        {
            date: '2017-04-22',
            price: 940
        }
    ];
    
    var newArr = arr.sort(function (a, b) {
        return a.price > b.price;
    });
    console.log(newArr[0].price); // -> 940

    先将数组按price从小到大排序,
    然后取得数组第一条内容就是price最小的那个。

    Antwort
    0
  • StornierenAntwort