#programowanie #javascript Cześć, nie wiem jak najlepiej "ugryźć" mój problem i potrzebuje waszej pomocy.
mam podobne obiekty na które składają się różne dwa zestawy właściwości raz jest to
{ cena waga przeliczeniowka } // np. 3.99 ; 400 g; 2.00 zł a czasami mam
{ cena waga_1 waga_2 przeliczeniowka_1 przeliczeniowka_2 } //np. 3.99 ; 400 g - 500 g; 2.00 zł - 2.56 zł wszystkie powyższe właściwości są "number". -----------
Przyznam się, że nie umiem znaleźć jakiegoś poprawnego perspektywicznego zapisu tych wartości
To co chce robić to sprawdzać czy ( cena * 1000 / wagę) === przeliczeniówka.
function check (price, weight, unitPrice) { var ratio = (price * 1e3 / weight).roundUp(2); return ratio === unitPrice ? "OK" : ratio.toFixed(2) + " zł"; } wyniki funkcji 'check' chciałbym zapisywać do "wynik1", ew. "wynik2"
Pytanie czy rozbudowywać funkcję "check" czy też starać się sterowanie programem zrobić jak gdyby "poziom wyżej" (a jeśli tak, to czy ktoś podpowie jak to zrobić) ?
moja pierwsza koncepcja była taka by obiekt zawsze miał 3 własności, czyli: (tylko, że waga i przeliczeniówka byłyby tablicami
{ cena: number waga: [] przeliczeniowka: [] } // np. 3.99 ; 400 g; 2.00 zł Myślałem też o takim podejściu function check(n) { var ratio (price * 1e3 / this["weight"+n]).roundUp(2); return ratio === this["unitPrice"+n] ? "OK" : ratio.toFixed(2) + " zł"
}
result1 = check(1); if (obj.hasOwnProperty("result2"): result_2 = check(2);
@maciej-caderek: function check(item) { for (let i = 0; i < item.weight.length; i++) { const ratio = item.price * 1000 / item.weight[i]; if (ratio !== item.unitPrice[i]) {
Strona główna Allegro na święta 2006, czyli 19 lat temu. Tak, to jest cała strona główna portalu bez żadnych zablokowanych reklam. No i komu kuźwa przeszkadzał taki internet? xD #allegro #internet #webdev #nostalgia #kiedystobylo
Cześć,
nie wiem jak najlepiej "ugryźć" mój problem i potrzebuje waszej pomocy.
mam podobne obiekty na które składają się różne dwa zestawy właściwości
raz jest to
{cena
waga
przeliczeniowka
} // np. 3.99 ; 400 g; 2.00 zł
a czasami mam
{cena
waga_1
waga_2
przeliczeniowka_1
przeliczeniowka_2
}
//np. 3.99 ; 400 g - 500 g; 2.00 zł - 2.56 zł
wszystkie powyższe właściwości są "number".
-----------
Przyznam się, że nie umiem znaleźć jakiegoś poprawnego perspektywicznego zapisu tych wartości
To co chce robić to sprawdzać czy ( cena * 1000 / wagę) === przeliczeniówka.
function check (price, weight, unitPrice) {var ratio = (price * 1e3 / weight).roundUp(2);
return ratio === unitPrice ? "OK" : ratio.toFixed(2) + " zł";
}
wyniki funkcji 'check' chciałbym zapisywać do "wynik1", ew. "wynik2"
Pytanie czy rozbudowywać funkcję "check" czy też starać się sterowanie programem zrobić jak gdyby "poziom wyżej" (a jeśli tak, to czy ktoś podpowie jak to zrobić) ?
moja pierwsza koncepcja była taka by obiekt zawsze miał 3 własności, czyli: (tylko, że waga i przeliczeniówka byłyby tablicami
{cena: number
waga: []
przeliczeniowka: []
} // np. 3.99 ; 400 g; 2.00 zł
Myślałem też o takim podejściu
function check(n) {
var ratio (price * 1e3 / this["weight"+n]).roundUp(2);
return ratio === this["unitPrice"+n] ? "OK" : ratio.toFixed(2) + " zł"
}
result1 = check(1);
if (obj.hasOwnProperty("result2"):
result_2 = check(2);
Proszę pomóżcie
http://pastebin.com/VhPatnK5
@zulik Dobrze kombinujesz z tymi tablicami, mogło by to wygladać mniej wiecej tak: http://codepen.io/anon/pen/YGLaKE?editors=0012
https://jsfiddle.net/zulik/L24rbco2/
function check(item) {
for (let i = 0; i < item.weight.length; i++) {
const ratio = item.price * 1000 / item.weight[i];
if (ratio !== item.unitPrice[i]) {
są plusy i minusy:
https://jsfiddle.net/zulik/7xb9g2g0/