Wpis z mikrobloga

#programowanie #javascript

rece mi opadaja
nie mam pojecia czemu program sie zawiesza jesli w tej funkcji uzyje switch :((

jedyne co mi przychodzi na mysl to to - ze wchodze w jakis zakres pamieci :(

Module.prototype.decodeWeight = function () {
var p = {
digit: '(\d+\.?\d*)',
cont: '(\/1\s(opak|pusz|but|szt)\.)',
unit: '(k?g|ml|l\b|szt\.)'
};

//regular expression
var bez = "^(1\s(szt\.|kg|l\b)|100\s(g|ml))(\/1\s(opak\.|pusz\.|but\.|szt\.|para))?\s*$";
var comma1 = "^" + p.digit + "\s" + p.unit + ",\s" + p.digit + "\s" + p.unit + p.cont + "\s*$";
var comma2 = "^" + p.digit + "\s" + p.unit + ",\s" + p.digit + "\s" + p.unit + ",\s" + p.digit +"\s" + p.unit + p.cont + "\s*$";
var comma3 = "^" + p.digit + "\s" + p.unit + ",\s" + p.digit + "\s" + p.unit + ",\s" + p.digit +"\s" + p.unit + ",\s" + p.digit +"\s" + p.unit + p.cont + "\s*$";
var range = "^" + p.digit + "-" + p.digit + "\s" + p.unit + p.cont + "\s*$";
var one = "^" + p.digit + "\s" + p.unit + p.cont + "\s*$";

var desc = this.desc.opis.replace(/(kostek|role?k(?:i|a)?|torebe?k(?:i|a)?|piramide?k(?:i|a)?)/g, "szt.");
desc = desc.replace(/(\d),(\d)/, "$1.$2");
desc = desc.replace(/(\d+)\sx\s(\d+\.?\d*)/g, function(str) {
return (Number(RegExp.$1) * Number(RegExp.$2)).toString();
});

var test = new RegExp(bez,"m").test(desc)
//~ switch (true) {
//~ case test:
//~ return "without unitprice";
//~ break;
//~ }
  • 12