Reducella saa ainakin jokaisen arvon erikseen näppärästi, mutta voikohan sitä käyttää myös jotenkin "niputettuna", että selvittäisiin yhdellä silmukalla, ettei ao. esimerkissä tarvitsisi tehdä jokaiselle keylle omaa reducea.
Eli että saataisiin heitetty suoraan muuttujiin [xKeskiarvo, yKeskiarvo, zKeskiarvo]=taulukko.reduce.. jne. Liekö mahdollista?
//---
const piste1 = { x: 1, y: 2, z: 3 }
const piste2 = { x: 4, y: 5, z: 6 }
const piste3 = { x: 7, y: 8, z: 9 }
const taulukko = [ piste1, piste2, piste3 ]
const xKeskiarvo = taulukko.reduce((summa, { x }) => summa x, 0) / taulukko.length
const yKeskiarvo = taulukko.reduce((summa, { y }) => summa y, 0) / taulukko.length
const zKeskiarvo = taulukko.reduce((summa, { z }) => summa z, 0) / taulukko.length
console.log( { xKeskiarvo, yKeskiarvo, zKeskiarvo } )
// tulostaa: { xKeskiarvo: 4, yKeskiarvo: 5, zKeskiarvo: 6 }
Objektitaulukon keskiarvot keyn perusteella
4
159
Vastaukset
- Anonyymi
Miten koodaan saimaan peräreijän!
- Anonyymi
Sainkin sen toteutettua, mutta tuli aika karmean näköinen lauseke ja piti vielä mappiakin käyttää.
const [ xKeskiarvo, yKeskiarvo, zKeskiarvo ] =
taulukko.reduce(([ sx, sy, sz ], { x, y, z }) =>
[ sx x, sy y, sz z ], [ 0, 0, 0 ]).map((k) => k / taulukko.length) - Anonyymi
Voisi tehdä myös niin, että ensin tekee funktion, joka ottaa attribuutin nimen ja palauttaa funktion, joka laskee keskiarvon taulukon olioista sen attribuutin suhteen. Sitten mäppää halutut attribuuttien nimet tämän funktion avulla keskiarvoiksi.
const f = (attr) => (arr) => arr.reduce((acc, x)=>acc x[attr], 0)/arr.length;
['x', 'y', 'z'].map(attr=>f(attr)(taulukko));- Anonyymi
Hyvä, tämä näyttää paljon tyylikkäämmältä ratkaisulta.
Ketjusta on poistettu 1 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Persuja ei aluevaltuustoissa näy
Ei tunnu persuja paljon paikalliset asiat kiinnostavan, vaan ainoastaan ulkomaalaiset, joku Israel ja Trumpin fanitus.973998Päivän Riikka: Uudenkaupungin autotehdas hiljeni
Näin ne 100 000 uutta pysyvää ei-tempputyötä yksityiselle sektorille tämän hallituksen ansiosta syntyy. Työntekijöille j973357Riikka vie Suomen kohta ykköseksi työttömyyskisassa
Espanja: 10,5 % Suomi: 10,3 % Ruotsi: 9,3 % Kisa on tiukkaa, mutta Riikalla hyvä draivi päällä. Vasemmistolaisen päämin1312668Miten juhlitte ensi lauantaina?
Se on kalenteriin merkitty juhlapäiväksi, niin sitä kai kuuluu juhlia.2492199Laita tunniste josta kaivattusi tietää sun kirjoittavan täällä
Joku yksilöity yhteinen juttu joka on sun ja kaivattusi välillä. Tuntomerkkinä esim. punainen pipopää, tonttu-ukko tai m971981Varusmiehen kuolema
Ei ollut vahinko, ei aiheuttanut vaaraa muille, eikä ollut rikos, mitä jää jäljelle? Oliko kyseessä oman käden kautta lä1001893Mikä ihme teitä savolaisia tuossa
p*rs*reiässä niin kiinnostelee? Että siitä pitää päntönnään huutaa.211829- 1151673
Kumpaan rahat, mummojen vaippoihin vai Nalle WahIroosille?
JOS siis sinä saisit päättää?11331- 571255